层次结构 id 数据类型和代码优先

本文关键字:代码 id 数据类型 层次结构 | 更新日期: 2023-09-27 18:31:09

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

另外,在插入/删除时如何与层次结构ID交互。谢谢。

层次结构 id 数据类型和代码优先

这可能是实体框架中层次结构 ID 的重复项,不起作用

EF 不支持该数据类型 http://thedatafarm.com/blog/data-access/sql-server-2008-data-types-and-entity-framework-4/

我不

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

似乎此类型仅在本机和托管 CLR 中受 SQL Server 内部支持。将其外部获取需要将其转换为字符串(请参阅此处的数据类型转换部分)。

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

希望这有帮助。