这曾经在旧版本的服务堆栈(.33)中工作。我现在正在尝试.55。
我有一个带有相对〜链接的.cshtml页面,我还在EndpointHostConfig中设置了WebHostUrl。
在旧版本中,metarefresh和href都被WebHostUrl取代。所以两者都是
http://server/baseurl/Incidents.
在较新的版本中,似乎只有href。所以metarefresh不再起作用了。它会刷新
http://server/baseurl/~/Incidents
不确定是否可以修复。
示例.cshtml
<head>
<meta http-equiv="refresh" content="3; url=~/Incidents">
</head>
<body>
<div>
<p>
<center>
<a href="~/Incidents">View Incidents</a>
</center>
</p>
AppHost.cs
SetConfig(new EndpointHostConfig {
AllowJsonpRequests = true,
WebHostUrl = ConfigurationManager.AppSettings["BaseUrl"],
答案 0 :(得分:2)
问题是~
无效html或有效网址。但您可以使用Razor中的URL扩展方法为您翻译路径,因为它了解代字号。 ASP.NET将~
理解为应用程序的根,并将相应地进行翻译。
<head>
<meta http-equiv="refresh" content="3; url=@Url.Content("~/Incidents")">
</head>
<body>
<div>
<p>
<center>
<a href="@Url.Content("~/Incidents")">View Incidents</a>
</center>
</p>