PartialView方法中的路径(在应用程序之间共享它们)

Sia*_*dos 11 asp.net-mvc

我想在一些应用程序之间共享一些部分视图.我尝试了在互联网上建议的不同解决方案,但没有一个不起作用!但我希望通过在PartialView方法中使用绝对或关系路径它可以工作,但我不知道是否可能.

所以这里有两个问题:

  1. 如果我在我的解决方案中创建一个公共项目作为子域,我可以在其他项目的方法中使用它的URLPartialView吗?
  2. 如果我在我的解决方案中创建公共文件夹,我会使用类似的路径"~/../Common/myView.cshtml".在这种情况下,Visual Studio在运行时没有在编辑器上出错我遇到错误("不能使用前导..退出顶层目录").那么在根之外使用公共文件夹的路径的任何解决方案是什么?

我知道将这些问题分成2个问题更好,但由于没有解决方案来分享部分观点,所以我在这里收集它们.

正如您所看到的,我的解决方案中包含一个Common文件夹,_MainMenu.cshtml并且我也在网站项目的共享文件夹中有此文件.

我应该如何在Admin控制器中编写PartialView以获取每个部分的路径?

我想要一些这样的代码:

对于Common文件夹:

return PartialView("~/../Common/_MainMenu.cshtml");

对于共享文件夹:

return PartialView("http://localhost:16287/Module/Menu/_MainMenu");

在此输入图像描述

Moh*_*ari 1

  1. 不可能。
  2. 这不是一个好主意。

因为这不是可以编译为 DLL 的代码,并且可以通过简单地引用它来使用它,所以最好在应用程序中创建区域或复制视图。

编辑:可以编译 Razor 视图。但这并没有改变这样一个事实:如果视图位于 Web 项目之外,则 Razor 视图路径解析器无法引用任何视图。虚拟路径可以工作。感谢@DaveAlperovich