使用entityFramework.hierarchyID在CodeFirst方法中,类型esrarchyID不含名称空



我正在启动新项目,我想在我的数据库模型和CodeFirst方法中使用esrarchyID。因此,我使用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 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; }
}

我知道我不得不错过SameThing,但是我无法在Google上找到有用的样本。谢谢!

我终于找到了这个问题的原因。因为整个解决方案是新的,所以它使用的是./express数据库(我不知道为什么它会完全选择此实例...也许是默认值)。即使我已经安装了MS SQL 2012,./express的实例为sql2005->无层次结构支持。当我明确指定连接字符串到新版本时,问题已解决。

我会保留这篇文章来帮助他人...如果您是其中之一,请不要忘记投票。

最新更新