将库放入GAC与使用MEF从共享位置加载库 [英] Putting Libraries in GAC vs Loading them from shared location using MEF

查看:101
本文介绍了将库放入GAC与使用MEF从共享位置加载库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 我正在做一个遗留项目,想知道您关于将库(UI Wrappers,Telerik等)放入GAC或使用MEF动态加载它们的想法.

问题是,我们有60多个使用此公共平台的解决方案,并且我们不希望在对公共平台进行较小更改的情况下产生部署连锁反应

选项1:将通用平台库放入GAC,解决方案不必通过对库进行更改(错误修复等)来触发部署.

选项2:放置在共享位置并使用MEF加载程序集,这样,我们仅将其部署在环境孤岛中的一个位置,所有解决方案服务器都将其获取并使用

堆栈:.NET frameworkk 4.5,.NET网站(不是Web应用程序),SQL

 I am working on a legacy project and would like to know your thoughts on putting  Libraries ( UI Wrappers , Telerik,etc) into GAC or use MEF to load them dynamically.

The issue is,  we have more than 60 solutions using this common platform and we dont want to have deployment ripple effect with minor changes to common platform

Option 1 : Put  Common Platform libraries to GAC, and solutions do not have to trigger a deployment with  changes to libraries ( bug fixes etc )

Option 2 : Put in shared location and use MEF to load the assemblies, this way we only deploy it at one place in the environment silo, and all solution servers get them and use

Stack : .NET frameworkk 4.5,  .NET Web Sites ( not web apps ), SQL

我会请您就使用方法的优缺点提出建议

I would request, your suggestions on to the approach to use and advantages and disadvantages

推荐答案

在我看来,您的公司应该使用Nuget软件包管理器,该软件包管理器将查看开发人员的计算机以及该计算机上的开发人员的开发环境,并将必要的软件包带入计算机上的开发环境 需要,这些都可以由您配置.

It seems to me that your company should be using the Nuget package manager that will look at the developer's machine and developer's development environment on the machine and bring the necessary packages to the development environment on the machine  as needed, which is all configurable by you.

https://www.nuget.org/


这篇关于将库放入GAC与使用MEF从共享位置加载库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆