2016-11-25 111 views
0

我正在试验OWIN selfhost,而我试图输出一个html响应,但是服务器总是返回xml输出。我究竟做错了什么?用OWIN selfhost输出html

class Startup 
{ 
    public void Configuration(IAppBuilder app) 
    { 
     var config = new HttpConfiguration(); 
     config.Routes.MapHttpRoute(
      "default", 
      "{controller}/{action}/{id}", 
      new { controller = "home", action = "index", id = RouteParameter.Optional } 
      ); 

     app.UseWebApi(config); 
    } 
} 

public class HomeController : ApiController 
{ 
    public HomeController() 
    { 
    } 

    [HttpGet] 
    public string Index() 
    { 
     return "<b>kg</b>"; 
    } 
} 

class Program 
{ 
    static void Main(string[] args) 
    { 
     var options = new StartOptions(); 
     options.Urls.Add("http://+:8181"); 

     using (WebApp.Start<Startup>(options)) 
     { 
      Console.WriteLine("Server started"); 

      Console.ReadLine(); 
     } 
    } 
} 
+0

请参阅http://stackoverflow.com/questions/14046417/how-to-return-raw-string-with-apicontroller如何返回HTML内容。 – polemarch

回答

0

您正在使用WebApi(ApiController)。这是为了生成XML或JSON,而不是HTML。生成HTML的MVC控制器在您移至ASP.NET Core之前不能在自主中运行。