gpt4 book ai didi

c# - Code-First 应用程序中的 XML 列

转载 作者:可可西里 更新时间:2023-11-01 03:05:29 24 4
gpt4 key购买 nike

我正在尝试在 Code First 中创建一个 XML 列。我很清楚 Entity Framework 并不完全支持 XML 列,而是将它们作为字符串读取。没关系。不过,我仍然希望列类型为 XML。这是我的类(class):

class Content
{
public int ContentId { get; set; }

[Column(TypeName="xml")]
public string XmlString { get; set; }

[NotMapped]
public XElement Xml { get { ... } set { ... } }
}

问题是,Code First 迁移完全忽略了 Column 属性并将该字段创建为 nvarchar(max) 。我尝试使用 [DataType("xml")],但这也没有用。

这是迁移错误吗?

最佳答案

你试过吗:

public String XmlContent { get; set; }

public XElement XmlValueWrapper
{
get { return XElement.Parse(XmlContent); }
set { XmlContent = value.ToString(); }
}

public partial class XmlEntityMap : EntityTypeConfiguration<XmlEntity>
{
public XmlEntityMap()
{
// ...
this.Property(c => c.XmlContent).HasColumnType("xml");

this.Ignore(c => c.XmlValueWrapper);
}
}

关于c# - Code-First 应用程序中的 XML 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12631290/

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