通过不同的Web应用程序共享相同的DLL而无需复制

Mat*_*ser 6 asp.net dll web-config

我有两个不同的asp.net Web应用程序都引用相同的DLL例如SharedLibrary.dll.

我想知道是否有一种方法可以将一些web.config设置添加到应用程序的配置文件之一,以避免需要有两个dll副本.

我的[简化]目录结构如下:

\root
     \Admin
           \web.config 
           \Addins
                  \AdminWebAppPage.aspx
                  \bin
                      \AdminWebApp.dll
                      \SharedLibrary.dll  <- this is the duplicated dll (I'd like to remove it from here ideally)
     \Websites
              \MyWebsite
                        \webroot
                                \web.config
                                \MainWebPage.aspx
                                \bin
                                    \MainWebsite.dll
                                    \SharedLibrary.dll
Run Code Online (Sandbox Code Playgroud)

Ryt*_*mis 5

如果您在全局程序集缓存(GAC)中注册程序集,则所有应用程序都可以访问它而无需复制.但是,从版本控制和部署的角度来看,我认为保持每站点副本更可取.

澄清:当站点不相关时,最好保留每站点副本.显然,如果共享库发生更改,您需要主网站和管理站点获取更新的副本.:-)