zoukankan      html  css  js  c++  java
  • [WCF REST] WebServiceHost 不依赖配置文件启动简单服务

    最近用WPF启动 WCF REST 服务,发现app.config 配置好烦,简单一个exe 可以到处搬动,还非得带一个累赘配置,不小心丢了程序就跑不起来。

    最后决定,砍去WCF配置项,用WebServiceHost 简单启动服务,监听端口与路径写在注册表中。WPF程序给一个配置项配置端口与路径项。

     1 [ServiceContract]
     2 public interface IHomeService
     3 {
     4     [OperationContract]
     5     [WebGet(UriTemplate = "Get/{id}", RequestFormat = WebMessageFormat.Json,ResponseFormat = WebMessageFormat.Json)]
     6     string Get(string id);
     7 
     8     [OperationContract]
     9     [WebInvoke(Method = "POST", UriTemplate = "Add", RequestFormat = WebMessageFormat.Json,ResponseFormat = WebMessageFormat.Json)]
    10     string Add(string stu);
    11 }
    12 
    13 public class HomeService : IHomeService
    14 {
    15     public string Get(string id)
    16     {
    17         return "Get " + id;
    18     }
    19 
    20     public string Add(string id)
    21     {
    22         return "Add " + id;
    23     }
    24 }
    25 
    26 public class WebApi
    27 {
    28     private static WebServiceHost _host;
    29 
    30     /// <summary>
    31     /// 开启服务
    32     /// </summary>
    33     /// <param name="url">监听路径(http://127.0.0.1:3721/abc)</param>
    34     public static void Open(string url)
    35     {
    36         if (_host==null)
    37         {
    38             Uri baseAddress = new Uri(url);
    39             _host = new WebServiceHost(typeof(HomeService), baseAddress);
    40             _host.Open();
    41         }
    42     }
    43 }

    更多详细内容 可以看 Artech 的详细分解

    https://www.cnblogs.com/artech/archive/2012/02/15/wcf-rest.html

  • 相关阅读:
    我喜欢的女孩有了男友 :(
    两个月后,我又回来了。
    准备辞职,想看看老板知道我要辞职之后的表情。
    已经交了辞职报告,今天下午跟老板谈一谈。
    上班第十天
    一年了,回来看看。
    上班第十一天
    领到了离职通知单
    对上班失去了兴趣
    还没有拿到回家的火车票,惨了啊。
  • 原文地址:https://www.cnblogs.com/craze/p/10878781.html
Copyright © 2011-2022 走看看