C# 注入适当的C类#
我需要一些关于如何更好地组织我的课程的建议 我有通用接口和类:C# 注入适当的C类#,c#,inheritance,.net-core,C#,Inheritance,.net Core,我需要一些关于如何更好地组织我的课程的建议 我有通用接口和类: public interface IReader { IEnumerable<Change> ReadChanges(string log, int count, string from); } 我想让它更通用,而不是使用ifI可以传递这个通用方法 因此,这就像: var changes = _Reader.ReadChanges(_count, from) 这可能吗?考虑在接口中添加一个方法,或者
public interface IReader
{
IEnumerable<Change> ReadChanges(string log, int count, string from);
}
我想让它更通用,而不是使用if
I可以传递这个通用方法
因此,这就像:
var changes = _Reader.ReadChanges(_count, from)
这可能吗?考虑在接口中添加一个方法,或者在派生的具体类中覆盖它,这样您就可以对所有这些类调用IConcreteClass.LogMethod(),使它们对自己的日志记录方式负责。也许您可以提供一个小示例?
public class SpecificReader
{
private readonly IReader _reader;
public SpecificReader(IReader reader)
{
_reader = reader;
}
public IEnumerable<Change> ReadChanges(int count, string from)
{
return _changesReader.ReadChanges("specific log", count, from);
}
}
var changes = _type == MyType.SpecificReader
? _specificReader.ReadSpecific(_count, from)
: _somethingElse.ReadSomethingElse(_count, from);
var changes = _Reader.ReadChanges(_count, from)