Ano*_*nym 5 c# xml-serialization
考虑一个简单的案例
public class Test {
public String myString;
}
Run Code Online (Sandbox Code Playgroud)
有什么办法可以告诉XmlSerializer在序列化时对base64编码myString吗?
你可以简单地将它设置为一个byte[]属性,它会自动进行 Base64 编码:
public class Test {
public byte[] MyProperty {get;set;}
public void SetMyProperty(string text)
{
MyProperty = System.Text.Encoding.Unicode.GetBytes(text);
}
}
Test test = new Test();
test. SetMyProperty("123456789123456789");
Run Code Online (Sandbox Code Playgroud)
输出:
<MyProperty>MQAyADMANAA1ADYANwA4ADkAMQAyADMANAA1ADYANwA4ADkA</MyProperty>
Run Code Online (Sandbox Code Playgroud)
(尝试在这里解码)
不幸的是,(据我所知)没有办法将 MyProperty 设为私有并且仍然在System.Xml.Serialization.