我有 Validator.sln、A.sln、B.sln、C.sln。
A、B 和 C 是具有不同主要功能的大型项目。我想使用他们的一些逻辑来验证一段数据。
因此,在 Validator.sln 中,我有一个源文件:
public interface IValidator
{
bool Validate(int myData);
}
我想在A、B、C中实现这个接口。 也就是说,
public Validator : IValidator
{
bool Validate(int myData)
{
bool dataValidates = true;
// Call a bunch of complicated logic
return dataValidates;
}
}
(这不会编译,因为 IValidator 在此上下文中未定义。)
我可以创建从 A 到 Validator 的程序集引用,它们在大多数情况下是单独的程序。 这是一个糟糕的解决方案吗?
编辑:
我还可以将 AValidator 放在 Validator.sln 中,然后在运行时从 A 动态链接我想要的程序集。但这是否违背了界面的目的?