" Test.cshtml"视野永远不会找到。
错误:视图'测试'或者找不到它的主人,或者没有视图引擎支持搜索到的位置 搜索了以下位置:
列出的地点包括:
~/Views/SecondGroup/Test.aspx
~/Views/SecondGroup/Test.ascx
~/Views/SecondGroup/123.cshtml
但不是正确的位置应该是"~/Views/SecondGroup/Test/123"
??
ViewOne.cshtml(由FirstController生成)
<button onclick= "@("window.location.href ='" + @Url.Action("Test",
"SecondController", new { id = "123" }) + "'");">
GO TO ANOTHER VIEW
</button>
SecondController
public ActionResult Test(string id)
{
return View("Test", id); // here id = '123'
}
Test.cshtml
@model String
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div> .... </div>
这是文件夹结构:
---Controllers
--- HomeController
--- FirstController
--- SecondController
-- Views
--- FirstGroup
--- ViewOne
--- SecondGroup
--- Test
为什么永远找不到"Test.cshtml"
视图?
谢谢
答案 0 :(得分:3)
在Test(string id)
方法中,您使用的return View("Test", id);
使用this overload,因为type
的{{1}}是id
。< / p>
在该重载中,第二个参数是呈现视图时要使用的母版页或模板的名称。
您需要使用this overload,其中第二个参数是string
(您的模型)。
更改代码以将object
转换为string
:
object