我在MVC C#项目上工作,我有一些总是相同的类。我想要做的是找到一种方法来分解代码,以便我可以在每次需要时快速实现它。
以下是其中一个类
的示例public class FeedbackManager
{
public List<Feedback> List = new List<Feedback>();
public FeedbackManager(){}
public List<Feedback> GetAll() { ... }
public Feedback GetById(string id) { ... }
public void Edit(string id, Feedback item) { ... }
public void Delete(string id) { ... }
public void Add(Feedback item) { ... }
public void Serialize() { ... }
public static FeedbackManager DeSerialize() { ... }
}
我尝试做的是创建一个界面并用“对象”更改所有“反馈”,这样当我实现界面时,我用“反馈”更改“对象”,但它没有成功。如果你有一些技巧来实现这种因素分类我会感兴趣
答案 0 :(得分:4)
public interface IManager<T>
{
public List<T> GetAll();
public T GetById(string id);
public void Edit(string id, T item);
public void Delete(string id);
public void Add(T item);
public void Serialize();
}
或
public abstract class AbstractManager<T>
{
public List<T> List;
protected AbstractManager(){
List = new List<T>();
}
public abstract List<T> GetAll();
public abstract T GetById(string id);
public abstract void Edit(string id, T item);
public abstract void Delete(string id);
public abstract void Add(T item);
public abstract void Serialize();
}
答案 1 :(得分:-2)
根据您对答案的#1评论,这听起来就像是一个很好的泛型用例:
public interface IManager<T>
{
public List<T> List = new List<T>();
public List<T> GetAll() { ... }
public T GetById(string id) { ... }
public void Edit(string id, T item) { ... }
public void Delete(string id) { ... }
public void Add(T item) { ... }
public void Serialize() { ... }
}
这些方面的东西?