如何解决@ Html.ActionLink对于语言
如何将其转换为HTML操作链接
if (!string.IsNullOrEmpty(requestCulture.ToString()))
{
foreach (var item in cultureItems)
{
if (item.Value.Equals(requestCulture.ToString(),StringComparison.InvariantCultureIgnoreCase))
{
item.Selected = true;
break;
}
}
}
我可以通过使用
生成链接if (!string.IsNullOrEmpty(requestCulture.ToString()))
{ foreach (var item in cultureItems) { if (item.Value.Equals(requestCulture.ToString(),StringComparison.InvariantCultureIgnoreCase)) { <a href=“@url”>@item.Name</a> } } }
但是如何为href生成链接,以更改页面上的语言。 href = / fr-ca
<a>FR</a> <a>EN</a>
解决方法
因为ActionLink
的参数错误。它无法生成正确的操作链接。 @Html.ActionLink
可以配置五个参数。第一个和第二个参数是必需的。
第一个参数是将在视图中显示的文本。第二个参数是动作。第三个参数是路由值。这是示例(Index.cshtml)。
@Html.ActionLink("text","get",new { key="item",value = "fr - ca" })
它由浏览器以这种格式解析。
<a href="/Home/get?key=item&value=fr%20-%20ca">text</a>
在HomeController中。
public IActionResult get(string key,string value)
{
return Json($"{key} {value}");
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。