gpt4 book ai didi

c# - MVC 嵌套 Controller 和 View

转载 作者:行者123 更新时间:2023-11-30 17:47:52 26 4
gpt4 key购买 nike

我们的一些 Controller 变得太大了,所以我试图通过重构来简化它们:

Areas
Vehicles
Controllers
Cars
CarController.cs
Engines
PistonController.cs
...
Models
Views
Cars
EditCar.ascx
Engines
EditPiston.ascx
ShowPiston.ascx
Animals
...

(命名空间与文件夹结构匹配)

我尝试了一些变体,但无法让 MVC 推理识别我的项目结构。

局部 View 返回在 Action 中是什么样子的?即,具有简单 return PartialView(piston) 的 EditPiston 操作想要使用 View Views-> Engines -> EditPiston.ascx,而不是 Views-> Cars->引擎 -> EditPiston.ascx

还有,我需要在注册区做什么?我需要设置任何特定路线吗?

最佳答案

开箱即用,您不能使用标准约定来执行此操作。

当然,您可以直接指定 View 位置。即:

return View("~/Areas/Views/Vehicles/Cars/Engines/Piston.cshtml");

另一种选择是创建您自己的派生自 RazorViewEngine 的 View 引擎,它会添加更多搜索路径,但是您应该知道这些路径将搜索每个页面呈现,并且如果您有大量搜索,可能会显着降低性能路径。

此处是创建您自己的 ViewEngine 的示例:

Can I specify a custom location to "search for views" in ASP.NET MVC?

关于c# - MVC 嵌套 Controller 和 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24139154/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com