gpt4 book ai didi

dotnetnuke - 是否可以将虚拟路径提供程序与 DotNetNuke 一起使用?

转载 作者:行者123 更新时间:2023-12-02 20:56:47 45 4
gpt4 key购买 nike

我们有一个使用 Angular 作为客户端框架的 DNN 模块。我希望能够将所有资源(例如 html 、 js 、css 、图像和字体)嵌入到我的模块中。(实际上我们的模块有多个 dll,并且每个 dll 都有自己的资源,所以我不需要每次我想制作一个包时,不想将所有这些资源复制到主模块文件夹中)

到目前为止,我已经尝试过 WebResource.axd,它在某种程度上是成功的( Here 就是我所做的),但后来我意识到,嵌入 html、图像和其他东西而不是 js 和 css 是不可能的(或者不是?)

然后我决定尝试使用 VirtualPathProvider,我使用了 this open source project实现了一个EmbeddedResourcesVirtualProvider。

我已使用 DNN 的 IRouteMapper 接口(interface)注册了此提供程序。现在我开始测试我的项目,我的所有资源都收到 404 错误。我尝试调试该项目,并在 VirtualProvider 的 FileExists 、DirectoryExists 和 GetFile 方法上放置一些断点,但 VirtaulProvider 请求的唯一虚拟路径是“~/Default.aspx”,除此之外没有其他

我想问是否可以将 VirtualParhProvider 与 DNN 一起使用?

我们正在使用 DNN 8。

最佳答案

我认为你把事情搞得太复杂了。如果您需要一个虚拟提供程序来让您的模块工作,那么您就做错了(在我看来)。模块应该是一个独立的包,可以部署在任何 DNN 安装上,除了安装模块之外无需执行任何操作。

通常当您 buy或下载free module ,它位于一个 zip 文件中,其中包含该 zip 中包含的所有必需文件。这可以是任何类型的文件(.dll、.js、css、.ascx、.aspx 等),只要在 .dnn 安装文件中定义即可。

然后您可以链接到模块的 ascx 中的文件。

<script type="text/javascript" src="/DesktopModules/YourModulePath/js/file.js"></script>
or
<img src="/DesktopModules/YourModulePath/images/image.jpg">

关于dotnetnuke - 是否可以将虚拟路径提供程序与 DotNetNuke 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42427460/

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