近期学习WebApi,初步感想是用起来很容易上手,概念上也很好理解,唯一不爽的地方就在于如果在Visual Studio环境里建立Webapi程序,它会自动给创建很多文件夹和文件,其中很多都是用不到的,经过Google和摸索,结合项目的实际需要,将Webapi作为一个单独的Class library存放,而Host程序分别为Console和IIS,下面做一下记录。
一、建立类库项目
1、在Visual Studio开发环境中,点击菜单 File->New Project->Class Library 新建一个类库项目, 如图:
2、安装 Microsoft.AspNet.WebApi.Core 包及其依赖
在Visual Studio开发环境中,点击菜单 Tools -> NuGet Package Manager -> Package Manager Console 进入 Nuget包管理器控制台,选择 Default project 为刚刚建立的类库项目,这里是 controller_library
在包管理器控制台中输入:
Install-Package microsoft.aspnet.webapi.core
如图:
3、编写测试Controller
4、安装 microsoft.aspnet.webapi.owin 包及其依赖
5、编写Startup
解决方案中,右键单击 controller_library, add -> class , 命名为 Startup.cs
二、建立宿主程序(Host)
1、在解决方案上单击右键,新建控制台项目,命名为WebAPIHost,打开 包管理器控制台,输入:
install-package microsoft.aspnet.webapi.owin
2、添加引用
3、编写宿主代码
4、编译解决方案,运行宿主程序:
5、测试
三、Host WebAPI 到IIS
1、建立空的Asp.Net 项目,将其命名为 WebAPIHost_IIS
2、右键单击 WebAPIHost_IIS 项目,添加目录 App_Start 并添加 WebApiConfig类
3、安装包 Microsoft.AspNet.WebApi.Core 及其依赖
install-package microsoft.aspnet.webapi.core
4、WebApiConfig的实现代码如下:
5、添加 Global Application Class
右键单击项目,add-> Global Application class,默认名称即可,这里是 Global.asax
6、安装 Microsoft.AspNet.WebApi.WebHost 包及其依赖
install-package Microsoft.AspNet.WebApi.WebHost
7、Global.asax.cs 代码如下:
8、现在,打开IIS(Internet信息服务管理器),添加网站绑定端口,目录指向 WebAPIHost_IIS 的项目目录
9、打开浏览器测试结果:
本文完。