gpt4 book ai didi

.net - XML 序列化中必需的属性

转载 作者:行者123 更新时间:2023-12-02 17:34:16 25 4
gpt4 key购买 nike

例如,我有要序列化的类

[Serializable]
class Person
{
[XmlAttribute("name")]
string Name {get;set;}
}

我需要将 Name 属性设为必需。如何在 .NET 中执行此操作?

最佳答案

您可以使用XmlIgnoreAttribute以及 <FieldName>Specified如果属性留空或为 null,则抛出异常的模式。在序列化期间NameSpecified将检查属性以确定是否应呈现该字段,因此如果 Name 属性保留为 null 或为空,则会引发异常。

class Person
{
[XmlElement("name")]
string Name { get; set; }
[XmlIgnore]
bool NameSpecified
{
get {
if( String.IsNullOrEmpty(Name)) throw new AgrumentException(...);

return true;
}
}
}

关于.net - XML 序列化中必需的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2894431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com