dar*_*rja 9 .net xml-serialization
例如,我有要序列化的类
[Serializable]
class Person
{
[XmlAttribute("name")]
string Name {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
我需要使Name属性成为必需.如何在.NET中执行此操作?
解决此问题的最佳方法是使用单独的 XSD 来验证 XML,然后再将其传递到XmlSerializer. 使用 XSD 的最简单方法XmlSerializer是从 XSD 开始,从该 XSD生成 的代码,XmlSerializer并使用它来验证 XML。
小智 6
如果该属性保留为空或为null,则可以将和XmlIgnoreAttribute一起使用<FieldName>Specified,引发异常。在序列化期间,NameSpecified将检查该属性以确定是否应呈现该字段,因此,如果Name属性保留为null或为空,则将引发异常。
class Person
{
[XmlElement("name")]
string Name { get; set; }
[XmlIgnore]
bool NameSpecified
{
get {
if( String.IsNullOrEmpty(Name)) throw new AgrumentException(...);
return true;
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7881 次 |
| 最近记录: |