我正在构建一个.NET MVC应用程序。我的视图中有一个锚标记,我的要求是从控制器的方法为该标记分配一个href。要清楚,在aspx页面中,我们可以创建一个元素并为其提供一个ID。现在从它的代码背后,我们可以通过它的ID名称来调用它来访问和操作该元素。我试图找出是否有办法实现与MVC类似的行为。
答案 0 :(得分:1)
有多种方法可以做到这一点。
您可以通过让控制器返回View传递一个对象以用作视图模型来使用视图模型:
<强>控制器强>
var model = new MyModel();
model.Url = "something";
return View(model);
查看强>
@model MyModel
<a href="@Model.Url"> link text </a>
或者您可以使用ViewBag:
<强>控制器强>
ViewBag.Url = "something";
return View();
查看强>
<a href="@ViewBag.Url"> link text </a>
答案 1 :(得分:0)
如果您想从控制器分配href
来查看,可以试试这个。
public ActionResult Index()
{
ViewBag.Link ="www.test.com";
return View();
}
<a href="@ViewBag.Link">Click</a>
这是demo。
答案 2 :(得分:0)
如果href是指向webapp之外的地址的链接,那么您只想这样做。如果它在您的应用程序中,那么您应该使用Html.ActionLink ..
@Html.ActionLink("Link text","ActionName","ControllerName")
如果您只想让控制器设置链接地址,而不是将它放在ViewBag中
在控制器中:
ViewBag.LinkAddress = "http://www.test.com"
ViewBag.LinkText = "Go to test.com"
在视图中
<a href="@ViewBag.LinkAddress">@ViewBag.LinkText</a>
希望这很清楚。