为了账号安全,请及时绑定邮箱和手机立即绑定

C#交叉依赖接口问题

C#交叉依赖接口问题

C#
收到一只叮咚 2021-05-18 17:13:48
我已经有两个完整的类(EF域模型),并带有相关的引用(一对多):public class Foo : IFoo{    public virtual ICollection<Bar> Bars { get; set; }}public class Bar : IBar{    public virtual Foo Foo { get; set; }}我需要通过接口使用它们才能实现DI。这样的接口实现显然不起作用:public interface IFoo{    ICollection<IBar> Bars { get; set; }}public interface IBar{    IFoo Foo { get; set; }}您能否请您以正确的方式提出建议?
查看完整描述

1 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

您可以使接口通用:


public class Foo : IFoo<Bar>

{

    public virtual ICollection<Bar> Bars { get; set; }

}


public class Bar : IBar<Foo>

{

    public virtual Foo Foo { get; set; }

}


public interface IFoo<T>

{

    ICollection<T> Bars { get; set; }

}


public interface IBar<T>

{

    T Foo { get; set; }

}


查看完整回答
反对 回复 2021-05-21
  • 1 回答
  • 0 关注
  • 121 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信