只有当用户明确声明使用包含这些方法的接口时,我才需要访问我的 dll 中的一些方法。
在名为 MathProcessor 的 dll 中,有两个接口
public interface IBasicFunctions
{
int Add(int x, int y)
}
和
public interface IAdvancedFunctions
{
double Divide(int x, int y)
}
我需要准备dll,这样当用户想要使用高级功能时,他也必须声明
using MathProcessor.IAdvancedFunctions
否则,在声明仅用于 MathProcessor 时,他只能访问 IBasicFunctions。
这可以通过扩展方法解决。在那种情况下,实现需要显式声明 using for 包含扩展方法的命名空间。