C# 使用依赖项的静态类的.NET范围

C# 使用依赖项的静态类的.NET范围,c#,.net,plugins,static,C#,.net,Plugins,Static,我正在创建一个可扩展的windows服务,关于我的方法,我有一个非常重要的问题 我有一个依赖于具有静态类数据库的库(我们称之为db.dll)的服务。 Database类有一些方法来为db access设置一些配置,并将其保存在静态变量中 然后在服务中,我使用DINAMICALL加载的插件(使用)。所有插件也依赖于db.dll 我的一个插件必须通过一些db.dll方法(从使用数据库类中存储的配置的类DbObject)访问数据库 问题是,插件将使用与服务器“相同”的数据库,还是我需要插件再次“初始化

我正在创建一个可扩展的windows服务,关于我的方法,我有一个非常重要的问题

我有一个依赖于具有静态类数据库的库(我们称之为db.dll)的服务。 Database类有一些方法来为db access设置一些配置,并将其保存在静态变量中

然后在服务中,我使用DINAMICALL加载的插件(使用)。所有插件也依赖于db.dll

我的一个插件必须通过一些db.dll方法(从使用数据库类中存储的配置的类DbObject)访问数据库

问题是,插件将使用与服务器“相同”的数据库,还是我需要插件再次“初始化”数据库静态类字段


另外,我知道我可以修改我的数据库类,使其成为一个单例,而不是使其成为静态的,并将其传递给插件,但我宁愿避免这种情况,因此我非常希望只与我的问题直接相关的答案。

如果插件引用了
db.dll
,你不必这样做。好的,我不应该,但我“可能”,这才是真正的问题:)如果没有结论性的答案,我会亲自测试,但我只是想避免,因为调试它进行检查可能需要一段时间。顺便说一下@DanielA.White,让我问你另一个问题。如果所有插件都依赖于db.dll,而我的windows服务也依赖于db.dll,那么我应该在plugins文件夹中包含db.dll吗?或者没有必要这样做?@user1970395应该没有必要这样做,没有。dll已加载到应用程序域中。谢谢大家,我没有得到结论性的答案(如果“不应该”表示“绝对不”原谅我,我一定是误解了。无论如何,我做了测试,调试了我的windows服务,它似乎是正确的。我的插件在我的静态类的范围内。而且,除了主可执行文件文件夹之外,没有必要将db.dll放在任何地方。谢谢!