windows 服务实现WebApi HttpSelfHostServer

6 篇文章 1 订阅

windows 服务实现WebApi HttpSelfHostServer


创建一个Windows服务
在这里插入图片描述
(一)构建服务

#region Web Api监听
Assembly.Load("WindowsSelfServer");//("Lind.DDD.TestApi");  //手工加载某个api程序集的controller
var config = new HttpSelfHostConfiguration("http://localhost:3333");
config.Routes.MapHttpRoute("default", "api/{controller}/{id}", new { id = RouteParameter.Optional });
var server = new HttpSelfHostServer(config);
server.OpenAsync().Wait();
Console.WriteLine("Server is opened");
#endregion';

(二)Controller代码

/// <summary>
    /// 测试webapi
    /// </summary>
    public class TestController : ApiController
    {
        // GET api/<controller>
        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }

        // GET api/<controller>/5
        public string Get(int id)
        {
            return "value";
        }

        // POST api/<controller>
        public void Post([FromBody]Demo value)
        {
            Thread.Sleep(10000);
            Logger.Core.LoggerFactory.Instance.Logger_Info(value.ToString());
        }

        // PUT api/<controller>/5
        public void Put(int id, [FromBody]string value)
        {
        }

        // DELETE api/<controller>/5
        public void Delete(int id)
        {
        }
    }
    public class Demo
    {
        public string appName { get; set; }
        public string url { get; set; }
        public override string ToString()
        {
            return string.Format("appName:{0},url:{1},datetime:{2}", this.appName, this.url, DateTime.Now);
        }
    }

(三)启动需要注册到windows服务

1.以管理员身份运行cmd

2.安装windows服务

cd C:\Windows\Microsoft.NET\Framework\v4.0.30319(InstallUtil.exe的路径,注意InstallUtil.exe的版本号需要和项目的版本号相同)

3.安装windows服务

InstallUtil.exe D:\项目相关文件\MonitoringTEST\DialTest\bin\Debug\ProjectTest.exe(项目的路径)

4.启动windows服务

net start TestServive(服务名称)

一开始我不太敢操作,但是遇到问题我还是决定试一下,首先在网上找了上面的操作步骤,但是不理解(从第二步开始)

注意注意InstallUtil.exe的版本号需要和项目的版本号相同

window服务需要做一个配置https://blog.csdn.net/taoerchun/article/details/92804492

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值