C# 如何设计一个接受配置以覆盖默认设置的接口?
假设我有一个C#接口,例如:C# 如何设计一个接受配置以覆盖默认设置的接口?,c#,interface,C#,Interface,假设我有一个C#接口,例如: public interface IDatabaseRepository { void Load<T>(IEnumerable<T> data); } 公共接口IDatabaseRepository{ 空隙荷载(IEnumerable data); } 现在我有一个具体的类: public class SQLRepository { private string _tableName; public
public interface IDatabaseRepository {
void Load<T>(IEnumerable<T> data);
}
公共接口IDatabaseRepository{
空隙荷载(IEnumerable data);
}
现在我有一个具体的类:
public class SQLRepository {
private string _tableName;
public SQLRepository(string tableName) {
_tableName = tableName;
}
public void Load<T>(IEnumerable<T> data) { }
}
公共类SQLRepository{
私有字符串_tableName;
公共SQLRepository(字符串表名){
_tableName=tableName;
}
公共无效负载(IEnumerable数据){}
}
假设我想要支持一个与构造函数中提供的不同的表名。
或支持,例如,某种可以覆盖默认设置的配置数据结构
我该怎么做呢
它可以在不公开接口的实现细节的情况下进行设计吗?您是否拥有不公开加载此方法的SQLRepository?我对依赖项反转和接口的理解是创建一个合同,其中在构建时提供任何特定于实现的设置。如果我想在使用中更改这些设置,该怎么办?在上面的例子中,这就是表名。我真的不明白你的意思,你只是将SQLRepository强制转换为IDatabaseRepository,对于其他类,就使用它,为什么你关心特定的设置。