Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 首先是分层ID数据类型和代码_C#_.net_Entity Framework_Ef Code First - Fatal编程技术网

C# 首先是分层ID数据类型和代码

C# 首先是分层ID数据类型和代码,c#,.net,entity-framework,ef-code-first,C#,.net,Entity Framework,Ef Code First,我需要做的是,在sql server中有一个使用HierarchyID数据类型的注释表,并希望将其映射到Code First/EF 4.3类。我怎样才能做到这一点 另外,在插入/删除时如何与hierarchyID交互。非常感谢。我不习惯这种数据类型,但我已经进行了一些调查 似乎只有SQL Server内部(本机和托管CLR)才支持此类型。将其从外部获取需要将其转换为字符串(请参阅) 我认为唯一的方法是在数据库中创建一个视图,将hierarchyid转换为nvarchar(4000)。要使其可更新

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


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

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

似乎只有SQL Server内部(本机和托管CLR)才支持此类型。将其从外部获取需要将其转换为字符串(请参阅)

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


希望这有帮助。

这可能是

EF不支持该数据类型