三级目录
结构
Program
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http.Formatting;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
using System.Web.Http.Cors;
using System.Web.Http.SelfHost;
namespace WebApiInConsole
{
class Program
{
public static HttpSelfHostServer _server;
public static HttpSelfHostConfiguration _config;
public static readonly string ServiceAddress = Common.AppConfigHelper.GetAppSettings("ApiAddress");
static void Main(string[] args)
{
_config = new HttpSelfHostConfiguration(ServiceAddress);
_config.EnableCors(new EnableCorsAttribute("*", "*", "*"));
_config.Formatters.JsonFormatter.MediaTypeMappings.Add(
new QueryStringMapping("datatype", "json", "application/json"));
_config.Formatters.XmlFormatter.SupportedMediaTypes.Clear();
_config.Routes.MapHttpRoute("DefaultApi",
"api/{controller}/{action}/{id}",
new
{
id = RouteParameter.Optional
});
try
{
_server = new HttpSelfHostServer(_config);
_server.OpenAsync();
Console.WriteLine("打开服务");
Console.ReadLine();
}
catch (Exception ex)
{
Common.Log4.LogManage.WriteErr("打开服务异常 " + ex.ToString());
}
}
}
}
YRTReaderController
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
namespace WebApiInConsole
{
public class YRTReaderController : ApiController
{
string epc;
public YRTReaderController()
{
}
private void getDataCallback(string epc)
{
this.epc = epc;
}
[HttpGet]
public string GetCardNum()
{
return "123456789012";
}
[HttpGet]
public string GetTest()
{
return "999";
}
}
}
配置文件
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/>
</startup>
<appSettings>
<add key="ReaderPort" value="com15"/>
<add key="CardReaderTime" value="500"/>
<add key="ApiAddress" value="http://localhost:1234"/>
<add key="DKQCLJG" value="20000" />
<add key="DKQCLJGSM" value="5000" />
</appSettings>
</configuration>