Hierarchyid数据类型和Code First

时间:2012-04-12 21:33:42

标签: c# .net entity-framework ef-code-first

我需要做什么,我在sql server中使用HierarchyID数据类型有一个注释表,并希望将其映射到Code First / EF 4.3类。我怎样才能做到这一点?

另外,如何在插入/删除时与hierarchyID进行交互。非常感谢你。

2 个答案:

答案 0 :(得分:4)

答案 1 :(得分:0)

我不习惯数据类型,但我已经进行了一些调查。

似乎此类型仅在SQL Server内部本地和托管CLR中受支持。将它传到外面需要将其转换为字符串(参见Data Type Conversion section here)。

我认为唯一的方法是在数据库中创建一个将hierarchyid转换为nvarchar(4000)的视图。要使其可更新,您可以为该视图定义一组插入/更新/删除触发器,或者创建一组相应的存储过程并将它们映射到EF上下文。我不记得EF Code First是否能够使用SP进行修改操作,但是可更新视图应该没问题,因为它看起来像普通的表。

希望这有帮助。