【问题标题】:Entity Framework, ado.net Data Services, odata实体框架、ado.net 数据服务、odata
【发布时间】:2012-02-21 23:47:22
【问题描述】:

我对 Entity Framework 很陌生,这是我的免责声明!我有一个带有 2 个表 tblModel 和 tblHairColor 的 SQL 2008 数据库。 tblModel 包含一个名为 hairID 的列,它是 tblHairColor 表的主键 id 的外键。

我创建了 ado.net 实体数据模型,现在,按照http://msdn.microsoft.com/en-us/library/dd728283.aspx,尝试访问我创建的数据资源。

我的http://localhost:51157/WcfDataService.svc/tblModels(1)/modelname/$value URL 通过从 tblModels 表中返回模型的名称(记录 1)非常有效。但是,当我尝试通过 http://localhost:51157/WcfDataService.svc/tblModels(1)/modelname/tblHairColor 访问头发颜色时,它不起作用,(未找到 http 404)。

从我的 SQL 数据库生成的实体模型在 tblHairColor 中创建了一个 tblModels 导航属性,在 tblModel 中创建了一个 tblHairColor 导航属性。它还自动生成 tblHairColor 与 tblModel 的关联(1 到 *)。我预计是 1 比 1。

我的问题是需要添加/更改什么以允许此查询 http://localhost:51157/WcfDataService.svc/tblModels(1)/modelname/tblHairColor 返回模型的头发颜色?

提前感谢您的宝贵时间。 鲍勃

【问题讨论】:

    标签: entity-framework wcf-data-services odata


    【解决方案1】:

    modelname 不应该用在 URL 中,只是导航属性:

    http://localhost:51157/WcfDataService.svc/tblModels(1)/tblHairColor
    

    如果你想要同时模型和头发颜色,你应该使用$expand:

    http://localhost:51157/WcfDataService.svc/tblModels(1)?$expand=tblHairColor
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-02
    • 1970-01-01
    相关资源
    最近更新 更多