Entity framework 在CodeFirst方法中使用EntityFramework.HierarchyId时,类型HierarchyId未使用命名空间或别名限定
我正在启动一个新项目,我想在我的DB模型和CodeFirst方法中使用HierarchyID。所以我使用nuget添加了EntityFramework.HierarchyId 但当我运行更新数据库时,我收到以下异常:Entity framework 在CodeFirst方法中使用EntityFramework.HierarchyId时,类型HierarchyId未使用命名空间或别名限定,entity-framework,ef-code-first,entity-framework-6,hierarchy,Entity Framework,Ef Code First,Entity Framework 6,Hierarchy,我正在启动一个新项目,我想在我的DB模型和CodeFirst方法中使用HierarchyID。所以我使用nuget添加了EntityFramework.HierarchyId 但当我运行更新数据库时,我收到以下异常: Schema specified is not valid. Errors: (0,0) : error 0040: The Type hierarchyid is not qualified with a namespace or alias. Only primitive t
Schema specified is not valid. Errors:
(0,0) : error 0040: The Type hierarchyid is not qualified with a namespace or alias. Only primitive types can be used without qualification.
我的桌子是这样的:
public class Activity
{
[Key]
public int ActivityId { get; set; }
public HierarchyId ActivityPath { get; set; }
public string Name { get; set; }
}
我知道我不得不错过一些简单的东西,但我无法在谷歌上找到有用的样本。谢谢大家! 我终于找到了这个问题的原因。 因为整个解决方案都是新的,所以它使用了./express数据库(我不知道为什么它选择了这个实例……可能是默认的)。即使我安装了MS SQL 2012,./express的实例是SQL2005->不支持层次结构。当我将连接字符串显式指定给新版本时,问题就解决了
我将保留此帖子以帮助他人。。。如果你是他们中的一员,别忘了投赞成票。我也有类似的问题——原因是——EDMX类型的拼写错误