基于空项目模板创建使用Owin来host的WebApi项目

首先创建一个空的web项目,如下图所示:

项目创建成功以后,安装下面三个package.

Install-Package Microsoft.AspNet.WebApi -Version 5.2.2
Install-Package Microsoft.AspNet.WebApi.Owin -Version 5.2.2
Install-Package Microsoft.Owin.Host.SystemWeb -Version 3.0.0

创建Owin Startup 类

 1 using System;
 2 using System.Threading.Tasks;
 3 using Microsoft.Owin;
 4 using Owin;
 5 using System.Web.Http;
 6
 7 [assembly: OwinStartup(typeof(FirstOwinWebApi.Startup))]
 8
 9 namespace FirstOwinWebApi
10 {
11     public class Startup
12     {
13         public void Configuration(IAppBuilder app)
14         {
15             HttpConfiguration config = new HttpConfiguration();
16
17             // Web API routes
18             config.MapHttpAttributeRoutes();
19
20             //WebApiConfig.Register(config);
21
22             app.UseWebApi(config);
23         }
24     }
25 }

创建API Controller.

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Net;
 5 using System.Net.Http;
 6 using System.Web.Http;
 7
 8 namespace FirstOwinWebApi.Controllers
 9 {
10     [RoutePrefix("api/HelloWorld")]
11     public class HelloWorldController : ApiController
12     {
13         [Route("")]
14         public IHttpActionResult Post()
15         {
16
17             return Ok<string>("Hello World");
18
19         }
20
21     }
22 }

F5运行,使用Postman访问Api

其他一些Owin中间件包:

Install-Package Microsoft.AspNet.WebApi -Version 5.2.2

Install-Package Microsoft.AspNet.WebApi.Owin -Version 5.2.2

Install-Package Microsoft.Owin.Host.SystemWeb -Version 3.0.0

Install-Package Microsoft.Owin.Cors -Version 3.0.0

Install-Package Microsoft.Owin.Security.OAuth -Version 3.0.0

Install-Package Microsoft.Owin.Security.Jwt -Version 3.0.0

Install-Package System.IdentityModel.Tokens.Jwt -Version 4.0.0

Install-Package Thinktecture.IdentityModel.Core Version 1.2.0

Install-Package Microsoft.AspNet.Identity.Owin -Version 2.0.1

Install-Package Microsoft.AspNet.Identity.EntityFramework -Version 2.0.1

时间: 2024-12-08 00:34:51

基于空项目模板创建使用Owin来host的WebApi项目的相关文章

vs项目模板创建和使用

一.使用dotnet命令创建(适用于.NET Core,可以创建包含任意数量个项目的模板,但不会出现在vs的新建项目模板中) 官方文档:https://docs.microsoft.com/zh-cn/dotnet/core/tools/custom-templates 拷贝所有要用作模板的项目到新建文件夹 在新建文件夹下添加./.template.config/template.json 文件 编辑template.json文件,内容如下: 1 { 2 "$schema": &quo

OWIN 自宿主模式WebApi项目,WebApi层作为单独类库供OWIN调用

为什么我们需要OWIN 过去,IIS作为.NET开发者来说是最常用的Web Server(没有之一),源于微软产品的紧耦合关系,我们不得不将Website.Web Application.Web API等部署在IIS上,事实上在2010年前并没有什么不妥,但随着近些年来Web的发展,特别是移动互联网飞速发展,IIS作为Web Server已经暴露出他的不足了.主要体现在两个方面,ASP.NET (System.Web)紧耦合IIS,IIS紧耦合OS,这就意味着,我们的Web Framework必

从头基于空镜像scratch创建一个新的Docker镜像

我们在使用Dockerfile构建docker镜像时,一种方式是使用官方预先配置好的容器镜像.优点是我们不用从头开始构建,节省了很多工作量,但付出的代价是需要下载很大的镜像包. 比如我机器上docker images返回的这些基于nginx的镜像,每个都超过了100MB,而一个简单的Ubuntu的容器超过了200MB,如果安装了相关的软件,尺寸会更大. 如果我们的需求是在构建一个符合我们实际业务需求的Docker镜像的前提下,确保镜像尺寸尽可能的小,应该怎么做呢? 思路是使用空镜像scratch

DotNetBar for Windows Forms 12.9.0.0_冰河之刃重打包版及制作Visual Studio C#项目模板文件详解

关于 DotNetBar for Windows Forms 12.9.0.0_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版---------------------------------------------------------基于 官方原版的安装包 + http://www.cnblogs.com/tracky 提供的补丁DLL制作而成.安装之后,直接就可以用了.省心省事.不必再单独的打一次补丁包了.本安装包和补丁包一样都删除了官方自带

maven archetype:generate 命令简化项目模板数量

在maven里使用 mvn archetype:generate 来创建项目是十分方便的,但有时也不尽然.在网络不好时,从网络上加载 archetype-catalog.xml文件(http://repo1.maven.org/maven2/archetype-catalog.xml)时需要很长时间,同时这个文件里记录着所有maven支持的项目模板,但可能我们并不会用到这么多的模板,比如我常用的就有三个, 1:maven-archetype-quickstart(最简单的模板) 2:maven-

ASP.NET Core WebAPI 开发-新建WebAPI项目 转

转 http://www.cnblogs.com/linezero/p/5497472.html ASP.NET Core WebAPI 开发-新建WebAPI项目 ASP.NET Core WebAPI 开发-新建WebAPI项目, ASP.NET Core 1.0 RC2 即将发布,我们现在来学习一下 ASP.NET Core WebAPI开发. 网上已经有泄露的VS2015 Tooling,需要VS2015 Update 2. .NET Core 1.0.0 RC2 SDK Preview

ASP.NET Core WebAPI 开发-新建WebAPI项目

小分享:我有几张阿里云优惠券,用券购买或者升级阿里云相应产品最多可以优惠五折!领券地址:https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=ohmepe03 ASP.NET Core WebAPI 开发-新建WebAPI项目, ASP.NET Core 1.0 RC2 即将发布,我们现在来学习一下 ASP.NET Core WebAPI开发. 网上已经有泄露的VS2015 Tooling,需要VS2

使用模板创建第一个Web API项目

软件环境 vs 2015 update3 本节将通过例子讲述创建Web API 项目的方法 第一步,打开vs ,依次通过[文件]菜单,[新建][项目]命令,大致步骤如下图 :   第2步,在弹出对话框中,选择左边C#模板下的Web ,然后选择第一个基于传统Framework4.5.2 第一个选择 ,大致如下图:     第3步,基于上一步确定后,选择 webAPI 模板,会自动引用mvc和WebAPI 的核心引用,大致如下:     创建成功后,大致的目录结构如下:   上面的目录结构和MVC组

创建Visual studio项目模板 vstemplate关键点纪要

from:http://www.cnblogs.com/stickman/p/3454719.html 经过多次的实验,终于完美生成一个.VSIX的项目模板安装包,其中遇到不少问题与挫折,久经google/baidu/自行摸索.终于解决所有问题. 现将心得记录总结如下 关于.vstemplate 1.可以通过导出模板直接生成.vstemplate及其他项目文件,以作为 模板的母版! 建议复制一份csprj文件做.vstemplate里面引用的模板项目文件. 2.TargetFileName/Ta