这与previous question非常相似(可能是完全相同的问题),但我真的不明白答案足以说明问题。
我在Visual Studio RC1中使用Entity Framework 4来创建一个azure服务应用程序(因此它是.Net 3.5)。我有一个包含很多模式的数据库,如下所示:
Thing ThingType
------------- --------------
Id : int Id : int
Type : int
其中Thing.Type引用ThingType。当EF4从数据库组装模型时,会生成一个错误,其中包含:
错误2016:无法为列成员“类型”指定条件,因为它标记为“已计算”或“标识”StoreGeneratedPattern。
我对如何前进感到茫然,但显然这是一种非常常见的情况。我非常有信心有人可以帮助我。
答案 0 :(得分:2)
在RC1中,存在一个错误,即外包密钥关系标记为StoreGeneratedPattern="Identity"
。这可能会导致您在这里看到的问题,但由于您的环境不同,我无法肯定地说。看一下你的EDMX文件,你应该看到StoreGeneratedPattern =“Identity”只是Thing和ThingType的Id字段而不是ThingThingType关系。
Microsoft已确认此错误已针对RTM修复,这很好,因为每次从数据库更新模型时它都会影响您!