我有:
实体框架DB首先
public partial class Departments
{
public string Name_Department { get; set; }
public int Department_ID { get; set; }
}
当我刷新模型时,文件中的所有修改都被清除
我需要:
如何将属性属性添加到Serialize XML,如:
[Serializable]
[XmlType(nameof(Departments))]
public partial class Departments
{
[XmlAttribute("Name_Department")]
public string Name_Department { get; set; }
[XmlAttribute("Department_ID")]
public int Department_ID { get; set; }
}
答案 0 :(得分:1)
您必须在属性窗口中将生成的属性设为私有。然后,您必须创建引用私有属性的新公共属性,并将属性添加到它们。在属性窗口中,您还可以重命名现在的私有属性,以便您可以将原始属性命名为原始属性:
生成的代码:
public partial class Departments
{
private string Name_DepartmentCore { get; set; }
private int Department_IDCore { get; set; }
}
自定义代码(在C#7.0中):
[Serializable]
[XmlType(nameof(Departments))]
public partial class Departments
{
[XmlAttribute("Name_Department")]
public string Name_Department {
get => Name_DepartmentCore;
set => Name_DepartmentCore = value;
}
[XmlAttribute("Department_ID")]
public int Department_ID {
get => Department_IDCore;
set => Department_IDCore = value;
}
}
答案 1 :(得分:1)
您首先使用数据库时会生成类模型,这是设计使然。
解决方案1。 Microsoft首先放弃对数据库的支持,并且edmx已被删除。一种解决方案是使用CODE FIRST。这将允许您使用属性来装饰POCO类。
解决方案2. 为XML序列化创建并行模型。