2013-05-06 49 views
0

进入正确的链接时遇到问题。当我尝试去索引视图模板文件夹它去索引视图中管理文件夹,而不是和我无法理解为什么当代码表示,它应该寻找这一观点在这个特定的文件夹:为什么我的@ html.actionlink转到正确的链接?

<fieldset> 

<legend>SiteConfig</legend> 
<p>Create new or edit Customers, Projects etc: 
    @Html.ActionLink("Create", "Add", "Admin", string.Empty) | 
    @Html.ActionLink("Edit", "AddEdit", "Admin", string.Empty) 
</p> 
<p>Create new or edit Users: 
    @Html.ActionLink("Create", "Add", "Admin", string.Empty) | 
    @Html.ActionLink("Edit", "AddEdit", "Admin", string.Empty) 
</p> 
<p>Upload or change Logo: 
    @Html.ActionLink("Upload", "Add", "Admin", string.Empty) | 
    @Html.ActionLink("Change", "AddEdit", "Admin", string.Empty) 
</p> 
<p>Upload or change Template: 
    @Html.ActionLink("Upload", "Index", "Template", string.Empty) | 
    @Html.ActionLink("Change", "AddEdit", "Admin", string.Empty) 
</p> 
</fieldset> 

回答

0

你的问题ISN不完全清楚,但对于您提供的链接,始终将Admin设置为控制器名称(第三个参数)。因此,在所有链接中,将在Admin控制器中调用AddAddEdit方法,因此将始终使用AddAddEdit模板从Views/Admin文件夹中使用。

+0

什么Andras说实际上正确的语法actio nlink是{“string text”,“Action”,“Controller”,{Parameters}}。当我试图去一个不同的控制器传递参数时,我总是在最后添加一个** null **参数。只是添加信息,以防您也遇到它。 – 2013-05-06 09:00:16

1

你很可能调用了错误的超载。那是什么string.Empty

Admin控制器如果是的话,那么你可以只是简单的做一个

@Html.ActionLink("Create", "Add", "Admin") 

你是不是想一些HTML样式添加到您的链接,然后做这个

@Html.ActionLink("Create", "Add", "Admin", new { @class = "some-class-name"}) 

你是不是想通过一些参数

@Html.ActionLink("Create", "Add", "Admin", new { @id = 5}, null) 
+0

不知道为什么我的学院使用string.empty为,但它使用正常的而不是actionlink – user2043267 2013-05-06 09:07:07

+0

它肯定会使用href,我认为只要url是正确的就可以了。所以在你的问题中,如果'Admin'是一个控制器,'Add'是一个方法,那么只需删除'string.Empty' - 它没有任何目的。如果你的同事问你为什么将其取出,那么问问他为什么首先添加它 - 然后一切都可以清除;) – 2013-05-06 09:23:45

相关问题