如何将xml表列映射到POCO对象中的XElement属性。
有没有办法使用复杂类型映射它,或者为EF框架提供某种转换函数,以便我可以使用XElement作为属性类型并将其用作数据库中的xml。
我希望流畅的api有一些方法来映射这个,但是我的搜索没有产生任何结果,而且看起来这个问题并不像我想象的那么普遍。
感谢。
答案 0 :(得分:4)
没有不支持,fluen-API也无法帮助您。 EF也没有像转换函数那样的东西(我简称为类型映射)。
您可以尝试的是在需要转换时通常使用的解决方法 - 您需要两个属性。一个将是字符串并映射到您的XML列(我没有尝试,但我希望它会工作),第二个将不映射XElement
。第二个属性将在内部转换为第一个字符串属性。类似的东西:
public class YourEntity
{
public string MappedProperty { get; set; }
public XElmenet NotMappedProperty
{
get
{
return XElement.Parse(MappedProperty);
}
set
{
// Some validation
MappedProperty = value.ToString();
}
}
}
它并不好,它不会让你的实体界面变得漂亮,但EF目前还没有提供更好的东西。