zoukankan      html  css  js  c++  java
  • asp.net mvc项目只能运行在iis根目录下吗?

    接触了asp.net mvc一段时间后,一直有这种疑虑,怎么mvc项目只能设为iis根目录或者在debug状态下才能跑起来。上csdn提问,得到高人的解释是 iis6以下不支持空扩展名的路径,需要把某个iis支持的扩展名添加到routing中去,

    诸如   routes.MapRoute(
             "myRoute",                                              // Route name
             "{controller}.mvc/{action}/{id}",                           // URL with parameters
             new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
         );

    当然 这里mvc是自己随便定义的扩展名,只要你的iis支持这个扩展名就行(如没有就添加)。

    我尝试了一下,确实可行,不过这个routing把路径  http://localhost/app/index变成了 http://localhost/app.mvc/index, 看着有点别扭,我仔细想想,为什么不把routing变成

    "myRoute",                                              // Route name
             "{controller}/{action}.aspx/{id}",                           // URL with parameters
             new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
         );

    这样,aspx的扩展名我的iis本身就支持,不需要添加对mvc的扩展名的支持,而且,这个路径看上去也比较像一个url(http://localhost/app/index.asp).

    问题虽然得到一个暂时的解决,但是感觉自己对mvc的routing的理解还是太肤浅,为什么设置为根目录的时候routing能解析空扩展名?routing到底是如何解析url的?看来自己还需要下功夫去琢磨啊。

    也希望能得到读者您的指点。

  • 相关阅读:
    如何DIY陶瓷制作方法
    陶瓷的分类
    陶瓷
    机器视觉之——认知篇
    Halcon学习笔记(一)
    编程过程遇到的问题及解决方法
    前端技术——WebFont与Sprite
    HTML学习总结(四)【canvas绘图、WebGL、SVG】
    CSS3学习之——【特殊属性】
    HTML5学习总结——本地存储
  • 原文地址:https://www.cnblogs.com/lindping/p/2004838.html
Copyright © 2011-2022 走看看