部署 MEF 部件
我构建了一个可执行 shell,它使用 MEF 加载程序集(MEF 部件)并根据加载的功能进行显示/操作。
我现在想要将此应用程序部署为 ClickOnce 安装。有没有人有这方面的策略,目前我已经看到了两种策略。
构建和安装部件并将其作为重新分发组件添加到 shell 应用程序 - 这意味着这两个安装基本上焊接在一起,这意味着 MEF 基本上没有意义
在 shell 中构建一个下载器功能,这再次意味着每个 MEF 部分都需要在我们开始之前就知道,这使得 MEF 毫无意义。
还有其他人知道其他方法吗?我可以以相反的方式构建依赖关系,以便 MEF 部件的 clickonce 安装程序知道它应该使用什么 shell 吗?
谢谢
I have built an executable shell that using MEF loads assemblies (MEF Parts) and displays / acts accordingly to the loaded functionality.
I now want to deploy this application as a ClickOnce install. Does anyone have a strategy for this, at the moment I have seen 2 strategies.
Build and installer for the parts and add it as a Redistributal Component to the shell application - this means that the 2 installations are basically welded together and it means that MEF is basically pointless
Build a downloader function into the shell, this again means that each MEF part needs to be known about before we start, and making MEF pointless.
Does anyone else know of any other approaches ? Can I build the dependancy the other way around, so a clickonce installer for the MEF parts knows what shell it should use ?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我所做的是使用 Packaging API 并制作一个映射到 shell UI 的自定义文件扩展名。它所做的只是将包解压缩到 ProgramData\MyApp\Extensions 文件夹。然后,当应用程序重新启动时,该部分就会显示出来。
请参阅此博文了解更多信息
What I did was use the Packaging API and make a custom file extension that is mapped to the shell UI. All it does is unzip the package to the ProgramData\MyApp\Extensions folder. Then when the app is restarted, the part shows up.
See this blog post for more info