在C#中使用两个具有相同名称的静态类

Ali*_*Ali 0 c# dll static-classes

我有一个DLL,我已经包含在我的C#项目中.我们称之为"one.dll"这个DLL包含一个名为"staticclass"的静态类

我有另一个DLL,我也包含在同一个项目中.我们称之为"two.dll"这个DLL还包含一个名为"staticclass"的静态类

现在当我在我的项目中同时包含两个DLL并尝试访问"staticclass"时,自然它会给出错误.有没有办法我可以更改类的名称或给它一些别名,所以让我们说"one.dll"中的"staticclass"将保持原样,我可以给"staticclassTwo"别名,这是"两个" .DLL"

请注意我无法访问"one.dll"和"two.dll"的源编解码器

Jon*_*eet 8

(我假设这两个类也在同一个名称空间中.如果它们不是,那很容易 - 只需使用简单using的别名指令,或代码中的完全限定名称.)

你确实可以给别名 - 一个外来别名.实际上,这会将"程序集"添加为命名空间区分的另一个级别.

显然你应该尽可能避免这种情况,但是当你绝对需要时,C#提供了一种非常明确的方式.

Anson Horton 对你如何在实践中使用它们进行了很好的演练.