gpt4 book ai didi

c# - 在不知道谁实现接口(interface)的情况下调用接口(interface)方法?

转载 作者:行者123 更新时间:2023-12-04 16:09:08 25 4
gpt4 key购买 nike

我有一个 asp.net WebForm 项目,我想将逻辑拆分到几个项目中:

我在解决方案中创建了 3 个项目。 -前端 -契约(Contract) & -后端

合约由模型和合约接口(interface)组成。后端实现来自合约的接口(interface)。

是否可以从前端调用Contract中的方法,而不知道后端实现接口(interface)的地方?

最佳答案

你是说这样?

public interface IContract { void Method(); }

public class Backend : IContract { public void Method() {} }

public class Frontend
{
public IContract Contract { get; set; }

public Frontend(IContract contract)
{
Contract = contract;
}

public void DoSomething()
{
Contract.Method();
}
}

Frontend 的初始化程序中,您可以显式传入 new Backend(),或者使用依赖注入(inject)框架来获得 IContract接口(interface)参数自动从定义的配置中解析。

关于c# - 在不知道谁实现接口(interface)的情况下调用接口(interface)方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19661978/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com