上海网站开发服务商,中国产品网企业名录,深圳最好的网站开发公司电话,手机wordpress后台一. 简单说明 开篇就介绍过WebApi和MVC相比#xff0c;其中优势之一就是WebApi可以不依赖于IIS部署#xff0c;可以自托管#xff0c;当然这里指的是 .Net FrameWork 下的 WebApi 和 MVC 相比较#xff0c;在.Net Core下#xff0c;当然就另行别论。 下面我们重点介绍的就…一. 简单说明 开篇就介绍过WebApi和MVC相比其中优势之一就是WebApi可以不依赖于IIS部署可以自托管当然这里指的是 .Net FrameWork 下的 WebApi 和 MVC 相比较在.Net Core下当然就另行别论。 下面我们重点介绍的就是WebApi基于控制台程序进行部署。
1. 安装程序集 通过Nuget添加程序集Microsoft.AspNet.WebApi 和 System.Web.Http.SelfHost。
2. 新建一个WebApi的控制器里面有一个CheckLogin的Get方法。 代码如下 1 public class ForthController : ApiController2 {3 //Get http://localhost:1234/api/Forth/CheckLogin?userNameadminpwd1234564 [HttpGet]5 public string CheckLogin(string userName, string pwd)6 {7 if (userName admin pwd 123456)8 {9 return ok;
10 }
11 else
12 {
13 return error;
14 }
15 }
16 } 3. 编写部署代码 包括端口设定路由规则的配置启动和关闭代码如下 1 class Program2 {3 static void Main(string[] args)4 {5 try6 {7 var config new HttpSelfHostConfiguration(http://localhost:1234);8 config.Routes.MapHttpRoute(name: DefaultApi,9 routeTemplate: api/{controller}/{action}/{id},
10 defaults: new { id RouteParameter.Optional });
11 using (var sever new HttpSelfHostServer(config))
12 {
13 sever.OpenAsync().Wait();
14 Console.WriteLine(服务已经成功启动);
15 Console.WriteLine(输入任意字符关闭);
16 Console.Read();
17 sever.CloseAsync().Wait();
18
19 }
20 }
21 catch (Exception ex)
22 {
23 Console.WriteLine(ex.Message);
24 }
25 Console.ReadKey();
26 }
27 } 特别注意不能直接在VS里启动会报权限不够的错误正确的使用放在在Bin文件里找到Exe程序以管理员的身份启动即可。 4. 启动exe程序然后用PostMan进行测试http://localhost:1234/api/Forth/CheckLogin?userNameadminpwd123456正常访问结果如下