【问题标题】:Web API 2.2 OData V4 not recognizing primary keyWeb API 2.2 OData V4 无法识别主键
【发布时间】:2014-11-27 19:10:35
【问题描述】:

在 Web API 2.2 WebApiConfig.cs 中:

ODataModelBuilder builder=new ODataConventionModelBuilder();
builder.EntitySet<Customer>("Customers")

客户实体由实体数据模型向导生成。 “来自数据库的 EF 设计器” 当我尝试加载实体时,它返回错误“客户实体没有密钥”

即使 CSDL 文件指定了主键并且它适用于 Web API 操作

<Key>
<PropertyRef Name="CustomerID">
</Key>
...

解决方法是在模型中手动添加 [Key] 注释属性。

问题:这是一个错误吗?如何解决此问题,而无需手动编辑任何内容来指定每个实体的主键?

【问题讨论】:

    标签: entity-framework asp.net-web-api odata asp.net-web-api2


    【解决方案1】:

    在您的 CSDL 示例中,您没有使用“/>”关闭 PropertyRef 标记。此 XML 语法错误可能会导致忽略客户密钥。

    <Key>
    <PropertyRef Name="CustomerID" />
    </Key>
    ...
    

    【讨论】:

      猜你喜欢
      • 2014-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-13
      • 2015-04-13
      • 2015-02-16
      • 1970-01-01
      • 2015-05-20
      相关资源
      最近更新 更多