Asp.net mvc PartialView方法中的路径(在应用程序之间共享)
我想在一些应用程序之间共享一些局部视图。我尝试了互联网上建议的不同解决方案,但没有一个不起作用! 但我希望通过在Asp.net mvc PartialView方法中的路径(在应用程序之间共享),asp.net-mvc,Asp.net Mvc,我想在一些应用程序之间共享一些局部视图。我尝试了互联网上建议的不同解决方案,但没有一个不起作用! 但我希望通过在PartialView方法中使用绝对路径或关系路径,它可以工作,但我不知道是否可能 这里有两个问题: 如果我在解决方案中创建一个公共项目作为子域,我可以在其他项目的PartialView方法中使用它的URL 如果我在解决方案中创建公共文件夹,我会使用类似于“~/../common/myView.cshtml”的路径。在本例中,Visual Studio在运行时未在编辑器上向我提交错误(
PartialView
方法中使用绝对路径或关系路径,它可以工作,但我不知道是否可能
这里有两个问题:
PartialView
方法中使用它的URL“~/../common/myView.cshtml”
的路径。在本例中,Visual Studio在运行时未在编辑器上向我提交错误(“无法使用前导..退出顶部目录上方”)。那么,是否有任何解决方案可以在根目录之外使用公共文件夹的路径\u main menu.cshtml
,而且我在网站项目的共享文件夹中也有这个文件
我应该如何在Admin controller中将PartialView写入到它们各自的路径
我想要一些如下代码:
对于公用文件夹:
返回PartialView(“~/../Common/_MainMenu.cshtml”)代码>
对于共享文件夹:
返回部分视图(“http://localhost:16287/Module/Menu/_MainMenu");代码>
不可能
这不是个好主意
因为这不是可以编译成DLL的代码,也不能通过简单地引用它来使用,所以最好在应用程序中创建区域或复制视图
编辑:可以编译Razor视图。但这并没有改变这样一个事实,即如果Razor视图路径解析器位于Web项目之外,它就不能引用任何视图。虚拟路径可以工作。
感谢@DaveAlperovich请分享一些代码以获得更多理解。不看代码,疯狂的解决方案是使用viewEngine动态创建视图,并在任意多个项目中使用它。我附加了一些代码以显示我的意思,正如您所见,Razor引擎限制了您对视图的访问。它们应该在“视图”文件夹内,不能在“Web项目”文件夹外。仅仅因为你不喜欢别人对你说的话就否决投票答案是非常不礼貌的。你不必投票给正确的答案,但是如果你真诚地得到的答案是正确的,而你投票给了错误的答案,人们就会失去帮助你的兴趣。-遵循上述问题我应该出于某些原因分开项目,我正在寻找一种在应用程序之间分享观点的方法。你问了一个问题,我回答了,这是错的吗?只有当答案是错误的或无关的时候,你应该考虑下投票。如果它是错误的,那么请提供正确的东西。是的。你的答案无关紧要。我的问题是“PartialView方法中的路径”。所以部分视图中设置的路径的类型是我的意思。除了Razor视图可以编译之外,所有的都是真的。但这并没有改变这样一个事实,即如果Razor视图路径解析器位于Web项目之外,它就不能引用任何视图。虚拟路径可以工作。平心而论,这个答案应该重新措辞。@SiamakFerdos,这个答案对于你的问题是正确的。Razor路径仅适用于Web项目文件夹内的文件。不喜欢一个答案是否决它的一个不好的理由。