加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

如何在ASP.NET MVC4项目之间共享HTML

发布时间:2020-12-16 00:25:45 所属栏目:asp.Net 来源:网络整理
导读:我有几个我正在建立的网站,显示相同或相似的数据页面。为了减少代码重复,我所做的是创建了第三个项目/网站,并且认为我将其用作共享的HTML,java脚本,CSS,图像等的位置。 我可以使用相对路径从共享项目中包含JavaScript,CSS和图像。但是我无法呈现HTML
我有几个我正在建立的网站,显示相同或相似的数据页面。为了减少代码重复,我所做的是创建了第三个项目/网站,并且认为我将其用作共享的HTML,java脚本,CSS,图像等的位置。

我可以使用相对路径从共享项目中包含JavaScript,CSS和图像。但是我无法呈现HTML的部分页面。当尝试访问正在尝试加载部分页面的两个网站使用这样的代码:

@RenderPage("/SharedArtifacts/Views/MySharedViewscshtml")

我得到以下回应:

The virtual path '/SharedArtifacts/Views/MySharedViewscshtml' maps to another application,which is not allowed.

现在我已经google了,尝试使用?前缀来指定路径的根,以解决问题,但无济于事…仍然是一样的错误。

关于如何解决这个问题的任何想法?

解决方法

我们一直这样做。简单(非编程)方式是在IIS中创建虚拟文件夹,映射到所有随播站点共享的共享文件夹。我们通常对错误结果页面和其他通用内容进行此操作。

/Views/SharedVirtual/somefile.ascx

路径/ Views / SharedVirtual通过IIS的虚拟文件夹映射。然后在控制器中我们可以做一个返回View(“/ Views / SharedVirtual / somefile.ascx”,somemodel);.它也可以与RenderPartial一起使用。

在本地使用项目时,我使用mklink在项目文件夹中创建一个映射到共享公用文件夹的连接点。这样VS认为文件夹是本地的,当它不是并且可以在本地运行项目进行调试。

我们通常不使用Razor,但这个概念应该是一样的,因为它不是在做共享映射的VS,它的操作系统和IIS。

一个值得注意的是,如果您编辑视图,它们将在所有项目中更改,因此您必须小心编辑,以确保在引用它们的所有项目中使用时都能兼容。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读