在Web API 2.2 WebApiConfig.cs中:
ODataModelBuilder builder=new ODataConventionModelBuilder();
builder.EntitySet<Customer>("Customers")
客户实体由实体数据模型向导生成。 &#34;来自数据库的EF Designer&#34; 当我尝试加载实体时,它返回错误&#34;客户实体没有密钥&#34;
即使CSDL文件指定了主键,它也适用于Web API操作
<Key>
<PropertyRef Name="CustomerID">
</Key>
...
解决方法是在模型中手动添加[Key]注释属性。
问题:这是一个错误吗?如何解决此问题,而无需手动编辑任何内容以指定每个实体的主键?
答案 0 :(得分:0)
在您的CSDL示例中,您没有使用&#34; /&gt;&#34;关闭PropertyRef标记。此XML语法错误可能会忽略客户密钥。
<Key>
<PropertyRef Name="CustomerID" />
</Key>
...