加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-web-api – 没有实体框架的WebAPI ODATA

发布时间:2020-12-16 04:06:20 所属栏目:asp.Net 来源:网络整理
导读:在Web Api控制器中考虑以下方法: [Queryable(AllowedQueryOptions= AllowedQueryOptions.All)]public override IQueryableMandate Get(){ return new ListMandate() { new Mandate() { Id = 1,PolicyNumber = "350000000",OpenPositions = new ListOpenPosi
在Web Api控制器中考虑以下方法:
[Queryable(AllowedQueryOptions= AllowedQueryOptions.All)]
public override IQueryable<Mandate> Get()
{
        return new List<Mandate>() { new Mandate() { 
            Id = 1,PolicyNumber = "350000000",OpenPositions = new List<OpenPosition>(){ 
                new OpenPosition(){ Id = 1,Amount =2300 },new OpenPosition(){ Id = 2,Amount =2100 }
            }},new Mandate() { 
                Id = 2,PolicyNumber = "240000000",OpenPositions = new List<OpenPosition>(){ 
                new OpenPosition(){ Id = 3,Amount =2500 },Amount =2100 }
            }

            } }.AsQueryable<Mandate>();
    }

这里列表是手动构建的,如果我浏览到以下url:

http:// localhost:52446 / odata / Mandates?$filter = Id eq 1它从列表中返回正确的项目.

现在很明显,列表更可能是数据库结构.将使用某些ORM检索数据并将其返回到Web API服务.

我不使用实体框架(我不能因为遗留系统).

在这种情况下,我如何使用Web API?如何翻译url参数,以便负责数据访问的层应用过滤器?

解决方法

得到它了.您通过LINQ提供程序向我指出了正确的方向.我发现我可以使用我们正在使用的ORM(OpenAccess)轻松完成.更多信息: http://docs.telerik.com/data-access/developers-guide/using-web-services/asp.net-web-api/developer-guide-wcfservices-web-api-expose-oacontext

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读