webApi的使用

1.以管理員身份運行

////獲得當前登錄的Windows用戶標示 
            //System.Security.Principal.WindowsIdentity identity = System.Security.Principal.WindowsIdentity.GetCurrent();
            //System.Security.Principal.WindowsPrincipal principal = new System.Security.Principal.WindowsPrincipal(identity);
            ////判斷當前登錄用戶是否爲管理員 
            //if (principal.IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator))
            //{
            //    //如果是管理員,則直接運行 
            //    Application.EnableVisualStyles();
            //    Application.SetCompatibleTextRenderingDefault(false);
            //    Application.Run(new Form1());
            //}
            //else
            //{
            //    //創建啓動對象 
            //    ProcessStartInfo startInfo = new ProcessStartInfo();
            //    //設置運行文件 
            //    startInfo.FileName = Application.ExecutablePath;
            //    //設置啓動動作,確保以管理員身份運行 
            //    startInfo.Verb = "runas";
            //    //如果不是管理員,則啓動UAC 
            //    Process.Start(startInfo);
            //    //退出 
            //    Application.Exit();
            //}

2.添加net包selfHost的5.2.7.0

  webHost的5.2.7.0

3.開啓服務

  var config = new HttpSelfHostConfiguration("http://localhost:8834"); //配置主機
            config.MapHttpAttributeRoutes();                                                             //配置路由
            config.Routes.MapHttpRoute("API Default", "api/{controller}/{action}/{id}", new { id = RouteParameter.Optional });
            config.Formatters.Remove(config.Formatters.XmlFormatter);
            config.Formatters.JsonFormatter.SerializerSettings.Formatting = Newtonsoft.Json.Formatting.Indented;
            HttpSelfHostServer server = new HttpSelfHostServer(config);
            server.OpenAsync().Wait(); //開啓來自客戶端的請求

4.創建Controller

 public class TestController : ApiController
    {
        [HttpGet]
        public List<object> getList()
        {
            List<object> list = new List<object>();
            list.Add(new { Id = 1, Name = "張三", Age = 20 });
            list.Add(new { Id = 2, Name = "李四", Age = 21 });
            list.Add(new { Id = 3, Name = "王五", Age = 22 });
            list.Add(new { Id = 4, Name = "趙六", Age = 23 });
            return list;
        }

        [HttpGet]
        public object get(int id)
        {
            return new { Id = 1, Name = "張三", Age = 20 };
        }

        [HttpGet]
        public string helloworld()
        {
            return "HelloWorld";
        }
    }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章