首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >实现管理器和存储库的更好方法是什么

实现管理器和存储库的更好方法是什么
EN

Stack Overflow用户
提问于 2019-06-04 05:09:02
回答 2查看 50关注 0票数 0

你能对下面的实现提供建议吗?

我正在尝试实现一种从Class1.Process()调用Class2.Save()方法的通用方法。

class Program
{
    static void Main(string[] args)
    {
        IClass2 c2= new Class2();                         
        Class1 c1 = new Class1(c2);
        c1.Process<Student>(new Student());
    }
}

public interface IClass1 {
    bool Process<T>(T t) where T : new();

}
public class Class1 : IClass1
{

    IClass2 _repo;
    public Class1(IClass2 repo)
    {
        _repo = repo;
    }

    public bool Process<T>(T t) where T :  new()
    {
         _repo.Save (t);
        return true;
    }
}

public interface IClass2 {
    void Save(Student e);
    void Save(Teacher e);
}
public class Class2 : IClass2
{
    public void Save(Student e)
    {
        return;
    }

    public void Save(Teacher e)
    {
        return;
    }
}
public class Student { }

public class Teacher { }

我不喜欢使用反射或投射。有没有人可以帮助解决这个问题,或者提出替代方法。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56434564

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档