Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将ActionLink添加到默认MVC Web应用程序_C#_Html_Asp.net Mvc_Razor - Fatal编程技术网

C# 将ActionLink添加到默认MVC Web应用程序

C# 将ActionLink添加到默认MVC Web应用程序,c#,html,asp.net-mvc,razor,C#,Html,Asp.net Mvc,Razor,我已经创建了HelloWorld控制器及其相应的视图。当我转到http://localhost/HelloWorld 我正在尝试向默认MVC应用程序添加菜单项。在_Layout.cshtml文件中 <ul id="menu"> <li>@Html.ActionLink("Home", "Index", "Home")</li> <li>@Html.ActionLink("Hello World", "HelloWorld", "")

我已经创建了HelloWorld控制器及其相应的视图。当我转到
http://localhost/HelloWorld

我正在尝试向默认MVC应用程序添加菜单项。在_Layout.cshtml文件中

<ul id="menu">
    <li>@Html.ActionLink("Home", "Index", "Home")</li>
    <li>@Html.ActionLink("Hello World", "HelloWorld", "")</li>
    <li>@Html.ActionLink("About", "About", "Home")</li>
</ul>
  • @ActionLink(“主页”、“索引”、“主页”)
  • @ActionLink(“HelloWorld”、“HelloWorld”、“HelloWorld”)
  • @ActionLink(“关于”、“关于”、“主页”)
注意,我只添加了Hello World部分。但是,当我单击菜单项时,它会占用我
http://localhost/Home/HelloWorld
。我如何让它转到
http://localhost/HelloWorld


我是MVC的新手,不太清楚自己在做什么。一些谷歌搜索提到修改Global.asax.cs中的路线,但这似乎有点奇怪,不确定从哪里开始。我还尝试使用~返回根目录,该目录在旧式asp.net页面中有效,但在此处无效。

ActionLink的定义是

public static MvcHtmlString ActionLink(
    this HtmlHelper htmlHelper,
    string linkText,
    string actionName,
    string controllerName
)
由于您试图重定向到
/HelloWorld
,因此我假设您的控制器是
HelloWorld
,您的操作是
Index
。利用这些信息,我们可以填写方法

Html.ActionLink(
    "Hello World",  // Link Text
    "Index",        // Action
    "HelloWorld",   // Controller
)

您想要的ActionLink的语法是:

@Html.ActionLink(string linkText, string actionName, string controllerName)
您正在传入ActionName并将controllerName留空,默认情况下,这将假定它是当前控制器上的一个操作(在本例中为“Home”)

试一试


假设,即,
HelloWorld
以您的
HelloWorld控制器
上的操作的名义。如果操作不同,请用适当的名称替换第二个参数。

也可以使用空字符串:

@Html.ActionLink("Home", "", "")

@Html.ActionLink("About Us", "About", "Home")

@Html.ActionLink("Contact me", "Contact", "Home")

很容易。业余的错误。7分钟后才能接受。将在几分钟内接受。谢谢,不客气。有时我们很累,即使是最简单的事情也很困难。因为他希望URL是
/HelloWorld
,所以操作必须是
索引。
@Html.ActionLink("Home", "", "")

@Html.ActionLink("About Us", "About", "Home")

@Html.ActionLink("Contact me", "Contact", "Home")