2012-10-02 110 views
0

因此,我有此页面将显示数据库中的单个记录。所以我的URL看起来像:如何在C#MVC中获取URL值并将其放入Html.ActionLink

mysite.com/Vehicle/Edit/1

否则可能结束它2,3,4,5等。根据记录其上。基本上,我需要在此页面的链接,将带我到另一个网页,但必须在URL相同的值,所以它可能看起来像:

mysite.com/Owner/Add/1

或者,它可能在2,3,4结束, 5等..取决于链接是在哪条记录。

如何使用C#MVC做到这一点,即时通讯使用Razor,如果这有什么区别。 谢谢

回答

3

你要使用Html.ActionLink助手之一。

假设您将Model传递给您的视图,该视图具有名为Id的属性。您可以使用Html.ActionLink这样的:

@Html.ActionLink("Add Owner", "Add", "Owner", new { id = Model.Id }, null)

第一个参数是该链接将显示文本。 第二个参数是调用Action的名称。 第三个参数是ControllerAction所在的名称。 第四个参数是Action的路由值。 第五个参数是html属性。假设你想添加一个class到你的链接。您可以使用new { @class = "my-link-class" }而不是null。注意上课前的@。这是因为class是保留字。如果您设置的是style,则只需执行此操作:new { style = "background-color: #ffffff;" }

所有这一切都假设您的添加Action需要int id。因此,像这样:

public ActionResult Add(int id) 
{ 
    // Do stuff. 
} 

下面是具体的Html.ActionLink超载我在示例中使用的文档:http://msdn.microsoft.com/en-us/library/dd504972(v=vs.108).aspx

+1

非常感谢,这应该其实一直是我应该很容易地找到了。但是,谢谢,很好的帮助 – Ben

+0

我们都有这样的时刻。真高兴你做到了! – Gromer

相关问题