gpt4 book ai didi

c# - Entity Framework 的部分类中的字符串属性未序列化

转载 作者:行者123 更新时间:2023-11-30 22:14:55 25 4
gpt4 key购买 nike

我正在尝试在 Entity Framework 的部分类中序列化一个字符串属性。

public partial class tableTest : EntityObject
{
public String testA
{
get
{
return "ok";
}
}

[XmlElement("TestB")]
public List<String> TestB
{
get { var list = new List<String>(); list.Add("testB"); return list; }
}
}

属性 TestA 无效,但属性 TestB 有效。我尝试将 XmlElement、XmlAttribute、DataMemberAttribute... 添加到 TestA,但没有任何效果。

有人猜猜吗?

(.net 框架 4.5)

最佳答案

[XmlElement] 建议您使用 XmlSerializer;现在,如果我们考虑:

public String testA
{
get
{
return "ok";
}
}

请注意 XmlSerializer 将忽略它,因为它知道它无法反序列化它(没有 setter )。序列化程序之后还希望能够反序列化 数据。它不序列化它,因为它不能在没有 setter 的情况下提供反序列化。

添加一个二传手。理想情况下,例如:

[XmlElement("testA")]
public string TestA {get;set;}

(并分别给它赋值"ok")

另请注意,您的列表目前也无法正确反序列化;我建议:

private readonly List<string> testB = new List<string>();
[XmlElement("TestB")]
public List<string> TestB { get { return testB; } }

(再次 - 单独添加测试数据)

关于c# - Entity Framework 的部分类中的字符串属性未序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18253365/

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