我已经创建了一个 .Net Core Web API 程序。我想要添加一个单独的视图。在同一个项目下添加一个 "Views" 文件夹。在 HomeController 中,我将所有的 API 请求都路由到这里,我创建了以下内容:
在我的Views文件夹中,我创建了一个名为“Home”的文件夹,并在其中添加了“Index.cshtml”。
当我启动API并导航到“../view”时,我到达了“return View();”行,但是然后它返回500内部服务器错误。
这就是我不喜欢MVC约定的“自动化”方法的原因。如果约定不起作用,我不知道在哪里将视图链接到控制器。
更新,这可能应该是我的第一步行动。我向Controllers文件夹添加了一个新类,并在VS2015中使用了MVC Controller模板。然后我添加了一个匹配的视图,但自动化仍然不起作用。
因此,为了明确,我的项目是:ASP.NET Core Web应用程序(.NET Core)具有Web API模板。我有一个“Jobs”控制器类,它在开始时被添加为'Values'并进行了重命名。然后我添加了一个名为“HomeController”的MVC控制器类,其唯一方法是“Index”。我添加了一个名为“Views”的文件夹和一个名为“Home”的子文件夹,并添加了一个名为“Index.cshtml”的MVC视图页面。
我尝试在Index方法中使用“return View();”,但不起作用。然后我尝试在Index方法上方添加[Route(“Home / Index”)]。无论哪种方式,URL都会将我带到“return View();”处的断点,但它永远不会返回视图。
[HttpGet("view")]
public IActionResult Index()
{
return View();
}
在我的Views文件夹中,我创建了一个名为“Home”的文件夹,并在其中添加了“Index.cshtml”。
当我启动API并导航到“../view”时,我到达了“return View();”行,但是然后它返回500内部服务器错误。
这就是我不喜欢MVC约定的“自动化”方法的原因。如果约定不起作用,我不知道在哪里将视图链接到控制器。
更新,这可能应该是我的第一步行动。我向Controllers文件夹添加了一个新类,并在VS2015中使用了MVC Controller模板。然后我添加了一个匹配的视图,但自动化仍然不起作用。
因此,为了明确,我的项目是:ASP.NET Core Web应用程序(.NET Core)具有Web API模板。我有一个“Jobs”控制器类,它在开始时被添加为'Values'并进行了重命名。然后我添加了一个名为“HomeController”的MVC控制器类,其唯一方法是“Index”。我添加了一个名为“Views”的文件夹和一个名为“Home”的子文件夹,并添加了一个名为“Index.cshtml”的MVC视图页面。
我尝试在Index方法中使用“return View();”,但不起作用。然后我尝试在Index方法上方添加[Route(“Home / Index”)]。无论哪种方式,URL都会将我带到“return View();”处的断点,但它永远不会返回视图。