PCB 脱离IIS的Web应用
在用.net Web编程中,我们写好的Web应用首选会挂在IIS上面,因为它足稳定并且功能齐全,但这不是我们唯一的选择,微软给我们提供了Owin组件,Web应该的宿主可以不再是IIS了,有了Owin后,宿主可以是控制台,也可以是Windows服务上;这样挺爽的。因为本公司另一个APS系统没挂在IIS上面,这里将它的方法分享一下.但我个人还是更倾向于挂在IIS上面,感觉更靠谱些.
一.NuGet 下载Owin

二.安装完后,引用增加下图如下dll

三.代码写一个WebAPI接口例子并启动
1.新建类:ppeflowController 写get方法
public class ppeflowController : ApiController
{ public IEnumerable<string> Get()
{
return new string[] { "开料", "钻孔", "沉铜", "板镀" };
}
}
2.新建类:Startup 并写WebAPI路由配置
public class Startup
{
public void Configuration(IAppBuilder appBuilder)
{
HttpConfiguration config = new HttpConfiguration();
config.Routes.MapHttpRoute(
name: "pcbrenApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { controller = "ppeflow", action = "Get", id = RouteParameter.Optional }
);
appBuilder.UseWebApi(config);
}
}
3.在Main方法中写启动Web代码
static void Main(string[] args)
{
string baseAddress = "http://localhost:8989/";
WebApp.Start<Startup>(baseAddress);
Console.ReadLine();
}
四.调用WebAPI
1.网页访问:http://localhost:8989/api

2.C#调用WebAPI
static void Main(string[] args)
{
string baseAddress = "http://localhost:8989/";//读取WEB API
HttpClient client = new HttpClient();
var response = client.GetAsync(baseAddress + "api/ppeflow").Result;
Console.WriteLine(response.Content.ReadAsStringAsync().Result);
Console.ReadLine();
}

PCB 脱离IIS的Web应用的更多相关文章
- 使用Nancy.Host实现脱离iis的Web应用
本篇将介绍如何使用Nancy.Host实现脱离iis的Web应用,在开源任务管理平台TaskManagerV2.0代码里面已经使用了Nancy.Host实现自宿主的Web应用.学习Nancy之前最好了 ...
- 用Owin Host实现脱离IIS跑Web API单元测试
开发笔记:用Owin Host实现脱离IIS跑Web API单元测试 今天在开发一个ASP.NET Web API项目写单元测试时,实在无法忍受之前的笨方法,决定改过自新. 之前Web API的单 ...
- 开发笔记:用Owin Host实现脱离IIS跑Web API单元测试
今天在开发一个ASP.NET Web API项目写单元测试时,实在无法忍受之前的笨方法,决定改过自新. 之前Web API的单元测试需要进行以下的操作: 初始配置: 1)在IIS中创建一个站点指定We ...
- IIS 7 Web服务器上部署ASP.NET网站(转)
IIS 7 Web服务器上部署ASP.NET网站小记 摘自:http://swanmsg.blog.sohu.com/162111073.html 网上查找了很久关于iis7配置asp.net配置问题 ...
- vs2015 无法启动IIS Express Web服务器
今天在VS2015上装了 之后无法启动IIS Express Web服务器. 然后我去查看了windows日志发现vs创建的虚拟目录不见了(至于是不是以上原因导致的没去查明) 然后在vs2015中点击 ...
- VS2013无法启动IIS Express Web的解决办法
关于 ASP.NET Web 开发服务器.本地 IIS和 IIS Express 的区别,请参见<VS2013无法启动IIS Express Web的解决办法>, 此文章最后提到的部分,即 ...
- VS2013无法启动 IIS Express Web解决办法
不要勾选[覆盖应用程序根URL(U)],或让[覆盖应用程序根URL(U)]下面的输入框和上面的输入框的地址一样! 使用VS2013有一段时间了,因前期都是编写C/S程序,没有使用到B/S调试器.前几日 ...
- win7安装iis及web配置教程
下面iis教程只适用win7或win8系统的服务器配置,如果您使用的是xp系统或win2003系统请看:xp或2003安装iis及web配置教程 .注:新手如果嫌iis安装配置麻烦建议下载PageAd ...
- Visual Studio提示“无法启动IIS Express Web服务器”的解决方法
有时,在使用Visual Studio运行ASP.NET项目时,会提示"无法启动IIS Express Web服务器",无法运行,如图: 这一般出现在重装系统之后,或者项目是从别的 ...
随机推荐
- springcloud中feign接值问题
很多时候使用feign都接收不到传过来的数据,一般情况如下! 如果是基本数据类型的话,使用@RequestParam @RequestMapping(value = "/selectDeta ...
- Linux 应用总结:自动删除n天前的日志
linux是一个很能自动产生文件的系统,日志.邮件.备份等.虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情.不用你去每天惦记着是否需要清理日志 ...
- 爬虫之Requests库
官方文档:http://cn.python-requests.org/zh_CN/latest/ 一.引子 import requests resp = requests.get("http ...
- 阿里云安装nodejs
cd进入root目录下: cd /root 下载node.js安装包 wget https://nodejs.org/dist/v8.11.2/node-v8.11.2-linux-x64.tar.x ...
- Mysql Group by 分组取最小的实现方法
表结构如下图:
- C语言结构体用法
结构体的定义: 方法一: struct student { char name[10]; int age; int number; }; struct student stu1; 方法二: struc ...
- Python进阶-打包程序为exe
操作系统:win7 x64 运行环境:Python3.5 安装PyInstaller 第一步:下载PyInstaller https://github.com/pyinstaller/pyinstal ...
- hadoop balancer 二
1.每次迭代一个datanode会移动不超过如下两者中较小的一个的数据量 1)10G 2)能力阈值 dfs.datanode.balance.bandwidthPerSec 每次迭代时间不会超过20分 ...
- [luoguP2983] [USACO10FEB]购买巧克力Chocolate Buying(贪心)
传送门 按价格排序后贪心 ——代码 #include <cstdio> #include <iostream> #include <algorithm> int n ...
- jquery追加元素的几种方法(append()、prepend()、after()、before()、insertAfter()、insertBefore())
最近项目不是很忙,抽空整理了下,js中常用追加元素的几种方法. <!DOCTYPE html> <html> <head> <meta charset=&qu ...