c# - 如何使用单独项目中的 MVC 视图?
问题描述
在工作中,我有一个在 Web 窗体上运行的相当老的 Web 应用程序。它是用 VB .NET 编写的。
出于显而易见的原因,我试图摆脱 VB.NET 作为主要语言,因此我在解决方案中启动了另一个项目,使用 MVC 和 C# 作为语言。
我不能只将 MVC 添加到同一个项目中,因为我不能在同一个项目中混合语言(即使可以,我也不确定我是否愿意)。我的计划是让主 Web 项目依赖于 MVC 项目,但在启动时,让主项目引导 MVC 内容,设置路由,并将 MVC 项目中的任何“未找到”路由路由到 Web 窗体项目.
我知道我可以将我的 Razor 视图编译为代码,但这意味着当我在视图中进行更改并在应用程序运行时保存它们时,这些更改不会反映在正在运行的 Web 服务上。我必须重建才能看到我不想一遍又一遍地做的改变。
基于此,我似乎需要为视图引擎创建一个新的视图定位器,然后指定在哪里查找视图。唯一的问题是新的 MVC 项目在主项目旁边的文件夹中运行,所以我不能使用超出原始项目根目录的相对路径(如果我在旧项目中,我可以' t 只是制作视图位置~/../../newProject/Views/{1}/Partials/{0}.cshtml
,因为它位于旧项目的根目录之上)
那么,如何创建一个视图定位器来定位单独项目中的视图?
解决方案
推荐阅读
- c++ - 使用 -O3 编译时不执行 C++ 循环回调
- javascript - 当数据集变大时,保持图形中的 Y 轴比例并在 X 轴上滚动。纵横比问题
- javascript - 带有单圈时间的秒表 JavaScript(如 iPhone 秒表)
- r - 映射卷时无法连接到 Docker 应用程序
- flutter - 引发了另一个异常:对空值使用空检查运算符?
- android - Android Edittext 不更新高度是第一个字母是新行
- java - 如何将 Google Tink KeysetHandle 转换为 byte[ ] 并返回?
- python - 只有当 post 和 get 请求被发送到包含 .delay() 和 AsyncResult() 的路由时才会处理 Celery 周期性任务
- delphi - 如何宣布 Bonjour 服务?
- http - HTTP POST 请求是否允许传递有效负载和输入参数