我一直在使用Web API在ASP.NET MVC内部开发一个AngularJS项目.除非您尝试直接转到角度路由URL或刷新页面,否则它的效果很好.我认为这可以用MVC的路由引擎来处理,而不是用服务器配置进行修改.
目前的WebAPIConfig:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional },
constraints: new { id = @"^[0-9]+$" }
);
config.Routes.MapHttpRoute(
name: "ApiWithActionAndName",
routeTemplate: "api/{controller}/{action}/{name}",
defaults: null,
constraints: new { name = @"^[a-z]+$" }
);
config.Routes.MapHttpRoute(
name: "ApiWithAction",
routeTemplate: "api/{controller}/{action}",
defaults: new { action = "Get" }
);
}
}
Run Code Online (Sandbox Code Playgroud)
当前的RouteConfig:
public class RouteConfig
{
public …Run Code Online (Sandbox Code Playgroud)