我目前工作的一个MVC4项目,正被部署到IIS6
托管环境。
我使用的Html.ActionLink()
来生成我的页面上的链接。
例如:
@Html.ActionLink("Home Link", "Index", "Admin")
当我在本地运行的应用程序(即打http://localhost:yyy
),被罚款生成的链接:
<a href="/Admin/Index">Home Link</a>
当我在生产环境中运行但它:
<a href="">Home Link</a>
正如你所看到的,该链接不具有href
它产生的。
我想这可能是与路由的问题,但是当我试图访问在浏览器的页面: admin/edit/45
使用自定义的路由绑定,或一个: sf/24
,这两个做工精细; 他们告诉我去我所希望的网页。
我敢出来的想法,不知道如何解决。
任何帮助将不胜感激。
谢谢,
我添加一个赏金这一点,希望这可以帮助得到答案。 我怀疑这个问题可能帮助别人,因为我似乎并没有做什么太突破性的。
UPDATE 24/09/14
这是在VS2010 SP1开发,利用内置的Web服务器(卡西尼?)。
我然后发布(使用Visual Studio的内置选项)到服务器,这是运行IIS6。
该目录结构包含类似于:
App_Start
Assets
Classes
Content
Controllers
DomainModel
Scripts
Services
SharedAssets
ViewModels
Views
(即在没有任何有链接的名称一致)。
在此之上,捆绑似乎工作。 例如: @Scripts.Render("~/bundles/adminjs")
使用这个(VB)剃刀:
@Html.ActionLink("View", "Display", "Form", New With { .id = 72 }, Nothing)
<br />
@Html.RouteLink("View", "Default", new with { .controller = "Form", .action = "Display", .id = 72 })
我得到以下输出..
在VS10 /铬(本地):
<a href="/Form/Display/72">View</a>
<br>
<a href="/Form/Display/72">View</a>
在IIS6 /铬(服务器):
<a href="">View</a>
<br>
<a href="">View</a>
..adding更多的它不拾取路径之谜..