1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- using MaxCommunication.DataBase.Document;
- using System;
- using System.Web.Http;
- using System.Web.Http.Cors;
- using System.Web.Http.SelfHost;
- namespace ProjectManagementSystem.WebApi.Service
- {
- public class WebApiServerHost
- {
- public TextDocument textDocument { get; set; } = new TextDocument(@"PMS\Log", "WebApiErrorLog_");
- public WebApiServerHost(bool IsListenterWebApi)
- {
- if (IsListenterWebApi) { StartServer(); }
- }
- private void StartServer()
- {
- try
- {
- HttpSelfHostConfiguration httpSelfHostConfiguration = new HttpSelfHostConfiguration("http://localhost:63300");
- httpSelfHostConfiguration.Formatters.Remove(httpSelfHostConfiguration.Formatters.XmlFormatter);
- httpSelfHostConfiguration.Formatters.Add(httpSelfHostConfiguration.Formatters.JsonFormatter);
- httpSelfHostConfiguration.Routes.MapHttpRoute(
- name: "DefaultApi",
- routeTemplate: "api/{controller}/{action}/{id}",
- defaults: new { id = RouteParameter.Optional }
- );
- EnableCorsAttribute enableCorsAttribute = new EnableCorsAttribute("*", "*", "*");
- httpSelfHostConfiguration.EnableCors(enableCorsAttribute);
- HttpSelfHostServer httpSelfHostServer = new HttpSelfHostServer(httpSelfHostConfiguration);
- httpSelfHostServer.OpenAsync().Wait();
- }
- catch (Exception ex)
- {
- textDocument.WriteFile(ex.Message + "\n" + ex.StackTrace);
- }
- }
- }
- }
|