5
我正在开发一个关于Azure的网站,与mvc5。我使用属性路由,在控制器上使用路由和路由前缀。我打电话与action.link助手。我没有命名我的路线。糟糕的性能和缓慢的网站与MVC 5属性路由
我做了以下我route.config:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapMvcAttributeRoutes();
routes.LowercaseUrls = true;
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
我的控制器是这样的:
[OutputCache(Duration = 600, Location = System.Web.UI.OutputCacheLocation.Client)]
[RoutePrefix("istanbul/kadikoy")]
[Route("{action=index}")]
public class KadikoyController : Controller
{
public ActionResult Index()
{
return View();
}
[Route("kadikoy-tarihi")]
public ActionResult KadikoyTarihi()
我的表现非常非常差的服务器响应时间,即9.6s
如果我注释掉属性路由代码,使用默认路由,我有2.1秒的服务器响应时间。
谢谢你的回复。
只有在向IIS发出第一次请求时才会出现糟糕的性能吗?这可能是由IIS创建初始工作进程造成的。 – alex 2015-06-10 14:50:41
我看到相同的东西,特别是那个调用来映射归因路线。我怀疑这是因为它正在扫描更多的程序集而不是查找所有属性,或者只是反射必然比编程式路由定义慢。 – 2017-11-18 17:11:18