我不知道为什么在调试项目后出现此错误,即使代码是默认的。
控制器
public class HomeController : Controller
{
//
// GET: /Home/
public ActionResult Index()
{
return View();
}
}
查看
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<title>Index</title>
</head>
<body>
<div>
Hi
</div>
</body>
不知何故,或者更确切地说,在调试之后,请求的URL始终是/Views/Home/Index.cshtml,但通过浏览器访问Home很好。 (HTTP://本地主机:58323 /家庭)
我用谷歌搜索,解决方案暗示问题出在全球。但那很奇怪,我不记得对它进行任何改动。
全局
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
感谢任何帮助。谢谢
答案 0 :(得分:5)
我认为您只是设置了visual studio设置,以便将视图设置为起始页面。右键单击项目并转到属性,然后转到Web选项卡。是否将“Views / Home / Index.cshtml”中的“特定页面”单选按钮设置为值?将其更改为使用启动网址。我个人不希望调试器启动浏览器并使用不要打开页面。
答案 1 :(得分:4)
右键点击您的网络项目 - &gt;属性 - &gt;网络
检查您是否将开始操作设置为特定页面,但该字段中没有值。
我的猜测是你将开始动作设置为当前页面。
答案 2 :(得分:0)
如果Views文件夹中文件夹结构的层次结构不正确,则可能会导致此错误。 如果要通过右键单击“视图”文件夹来添加视图。添加的新视图可能会错误地放置在文件夹层次结构中。
解决问题的方法是: 考虑一个名为index.ascx的视图,该视图应该链接到名为HomeController的Controller。 在Views文件夹下应该有一个文件夹名称Home(与Controller相关)和 index.ascx应该驻留在Home文件夹中。
添加视图的最佳方法是在公共方法旁边单击鼠标右键,这将在上下文菜单中显示“创建视图”选项。如果以这种方式创建视图,则会自动创建文件夹层次结构。