当我在我的机器上运行项目时,它会在http://localhost:53998/
上运行,但当我将其部署到http://test.myserver.com/MyApp/
时,所有链接都会中断。我正在使用相对路径代字号(~
),因此导航链接类似于:
<a href="~/SomeCtrl/Index">Some Action</a>
在localhost上,这工作正常(当root为/
时),但是当我在/MyApp/
下部署项目时,它将操作链接到http://test.myserver.com/SomeCtrl/Index
而不是http://test.myserver.com/MyApp/SomeCtrl/Index
,所以我总是得到404。
这不是代字号(~
)应该照顾的吗?我在这里做错了吗?
修改
这是正常的:
@Html.ActionLink("Some Action", "Index", "SomeCtrl")
而且:
<a href="@Url.Action("Index", "SomeCtrl")">Some Action</a>
答案 0 :(得分:0)
我遇到了类似的问题,我的答案就是我有一些URL重写设置,它们将波形路径更改为指向不同的文件夹。我不得不理清这些重写规则,这解决了我的问题。