首先关闭部署ClickOnce清单,我有点新鲜。我知道如何发布到应用服务器的基础知识,然后让每个人都使用最新版本(在设置之后检查更新,然后再运行应用程序)。
我们的应用服务器上存储了多个VB.Net应用程序,涵盖了公司的许多不同领域。但是,它们都以相同的方式连接到我们的Oracle数据库。因此,我的想法是创建一个包含常用函数的DLL,例如解密和读取我们的连接字符串,以及我们经常使用的一些非常常见的SQL函数/语句。然后,不是将相同的代码复制并粘贴到每个.Net程序中,而是将其存储在一个地方。当然,这样做的主要好处是,如果我们改变我们用来连接数据库的方法,或者需要修改/添加功能,我们就不需要打开每个程序,粘贴它们,并且.republish
所以,我做了一个测试,我拿了一个我编写的程序,将DLL添加到它并测试了它。它很棒。然后我获取了DLL的源代码,进行了更改以在函数开头显示一个消息框,重新构建DLL,并将其删除以代替测试程序中引用的副本。当我运行该程序时,它仍然使用没有消息框代码的原始DLL。
我的问题是,如果不对每次对其进行更改时使用此DLL的每个.Net程序重新发布,我怎样才能完成我想要做的事情?
答案 0 :(得分:1)
选项1
不是通过单击一次发布您的dll库,而是在您的dll类库周围放置一个Web服务包装器。每次单击一次应用程序将引用将在Web服务器上运行的Web服务。
然后,您在dll中的代码将在Web服务器上运行。只需要在Web服务器上更新对DLL代码的任何更改。您必须小心将接口更改保持在最低限度。
选项2
将dll作为单独的MSI安装推出。在您点击一次应用程序代码中引用dll,并确保在安装后单击该部署dll。对dll的更改将单独推出。