web api开始html页

web api开始html页,html,asp.net-web-api,routing,Html,Asp.net Web Api,Routing,我有web api项目,我有*.html页面,我需要在运行项目后运行它,但我不知道怎么做。 在MVC中,我使用MapRoute如下: routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }

我有web api项目,我有*.html页面,我需要在运行项目后运行它,但我不知道怎么做。 在MVC中,我使用MapRoute如下:

  routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
    );
但我不知道如何在WebAPI中实现它。我有下一个配置:

config.Routes.MapHttpRoute("DefaultApi", "api/{controller}/{action}/{id}", new { id = RouteParameter.Optional });
以及如何为运行我的html页面添加其他配置?
谢谢。

此代码说明了如何添加新路由:

 config.Routes.MapHttpRoute(
                    name: "ApiWithAction",
                    routeTemplate: "api/{controller}/{action}/{id}",
                    defaults: new { id = RouteParameter.Optional }
                );

     config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );

现在只需将路由写入静态文件

我在WebApi项目中使用如下代码:

public class DefaultController : ApiController
    {
        /// <summary>
        /// Default controller for render swagger UI 
        /// </summary>
        /// <returns></returns>
        [HttpGet, Route("")]
        public RedirectResult Index()
        {
            var requestUri = Request.RequestUri;
            return Redirect(requestUri.AbsoluteUri + "swagger/ui/index");
        }
    }
public类DefaultController:ApiController
{
/// 
///渲染招摇UI的默认控制器
/// 
/// 
[HttpGet,Route(“”)
公共结果索引()
{
var requestUri=Request.requestUri;
返回重定向(requestUri.AbsoluteUri+“swagger/ui/index”);
}
}

Thnaks,但如何呈现html页面。有人会这样想:返回视图(“Index.html”)?在网络上……这是个坏主意。返回数据的API构建。如果您尝试返回视图,可能您的架构不好。你可以在谷歌上尝试一些技巧,但同样——这是个坏主意。没问题。祝你好运