前言 OData, 相信身为.NET程序员应该不为陌生, 对于他的实现, 之前也有童鞋进行过介绍(见:这里1,这里2). 微软的WCF Data Service即采用的该协议来进行通信, ASP.NET WEB API目前也对OData进行了支持. 我在以前的.NET项目中也一直采用OData进行数据交换. 最近转去进行NodeJS的开发, 为了减少学习成本, 于是便有了noda-odata--一个基于 OData 协议的 RESTful API 库. 相较于Node Express, 它能使你…
基于上一篇<创建基于OData的Web API - Knowledge Builder API, Part III:Write Model and Controller>,新创建的OData Service已经能够正常显示metadata和读所有记录了,但是最基本的创建,读取单个,修改单个功能还没有. 本篇就在上一篇的基础上,增强Controller使之能涵盖CRUD的全部功能. 1. 对于Create操作,通常映射到POST方法,在KnowledgesController中加入如下方法 //…
在.NET Core 刚刚1.0 RC的时候,我就给OData团队创建过Issue让他们支持ASP.NET Core,然而没有任何有意义的答复. Roadmap for ASP.NET Core 1.0 RC2? 接着,在.NET Core 1.0刚刚发布的时候,又给他们创建了另外一个Issue,虽然被他们列为P1,但是已经没有下文: Roadmap for OData WebAPI run on ASP.NET Core 1.0 然后在.NET Core 2.0 Preview版本发布的时候,…
1. RESTful简述    REST是一种设计风格,是一组约束条件及原则,而遵循REST风格的架构就称为RESTful架构,资源是RESTful的核心,一个好的RESTful架构,通过URL就能很清晰的了解其相应的操作和需求是什么,即1. 通过URL定位资源,如:com.mobin/api/v1/shenzhen/subways //获取深圳地铁列表com.mobin/api/v1/shenzhen/schools   //获取深圳学校列表2. HTTP描述操作GET:获取资源POST:创建…
在前两篇文章<Part I: Business Scenario> 和<Part II: Project Setup>后,可以开始真正Model的创建. 步骤如下: 1. 创建Models文件夹,并在该文件夹中加入一个数个Class. Knowledge Category定义,代码如下: using System; namespace knowledgebuilderapi.Models { public enum KnowledgeCategory: Int16 { Concep…
本篇为Part II:Project Setup 查看第一篇<Part I:  Business Scenario> 第一步,准备步骤. 准备步骤一,下载.NET Core 2.2 SDK: 官方网址是:https://dot.net (貌似会redirect去https://dotnet.microsoft.com/),选择Download .NET Core 2.2 SDK,并正确安装. 准备步骤二,下载SQL Server 2017 Express: SQL Server的官方网址是:h…
本文转自:http://www.cnblogs.com/1zhk/p/5356053.html What – OData是什么? OData - Open Data Protocol,是一个设计和使用RESTful API的标准.REST本身只是一个构建web服务的思想和理念,其没有规定一个统一的标准来限制开发人员该如何设计RESTful API.其实我们实际开发中的确也没有遵循某个统一的标准去设计WebAPI.因为大多数场景下,遵循一个统一的标准并不是必要的.但在某些场景下,有这样一个标准却能…
 #基于webpack构建的 Koa2 restful API 服务器脚手架    这是一个基于 Koa2 的轻量级 RESTful API Server 脚手架,支持 ES6, 支持使用TypeScript编写.   GIT地址:https://github.com/Allenzihan/koa2-mysql-framework.git 此脚手架只安装了一些配合koa2使用的必要插件,不仅提供RESTful API实现,同时也集成了对静态资源的处理,支持跨越,代理转发请求等基础功能.基本上您仅…
由于ASP.NET Core 1处于RC阶段,加上OData WebAPI 对ASP.NET Core 1的跟进不是很积极,基于ASP.NET Core 1的Alpha 1版本已经N月没有check in,所以这次的OData Service还是基于ASP.NET 4.6.1创建.有兴趣的可以自行查看: https://github.com/OData/WebApi 开始之前,有两个常见问题必须要回答. 为什么要用API?这里牵扯到一个Layer的概念,即逻辑分层.常见的服务器端开发程序,都有一…
本篇体验实现ASP.NET Web API基于OData的增删改查,以及处理实体间的关系. 首先是比较典型的一对多关系,Supplier和Product. public class Product { public int Id { get; set; } public string Name { get; set; } public decimal Price { get; set; } public string Category { get; set; } [ForeignKey("Sup…