c# - 如何使用带有方法的接口
问题描述
我不确定我使用的术语是否正确,但基本上我想要这样的东西。
public interface IMovements
{
Boolean Run(string mammal);
}
public MovementService: IMovement
{
public Boolean Run(string mammal)
{
if(mammal == human)
{
Console.WriteLine("Human is now running");
return true;
}
else
{
Console.WriteLine("This creature can't run");
return false;
}
}
}
然后在主类中我只想调用接口来执行运行操作。
[Dependency]
IMovement Mov {get; set; }
//Do something with Mov
Mov.Run("Human");
Move.Run("Worm");
输出将是:
Human is now running
This creature can't run
解决方案
如果您想将依赖项作为接口注入,您可以选择
- 您传递接口的构造函数注入和像 Ninject 这样的依赖注入框架将为您实例化它
- 如您所描述的属性注入。
[Import]
来自 Microsoft 的 MEF 可以通过Attribute做到这一点。以及与[Dependency]
属性的统一。
推荐阅读
- javascript - Expo Publish:请求失败,状态码为 413
- android - 三星 S7 没有;发现任何蓝牙设备
- python - 在 discord.py 中使用随机模块
- angular - HttpClient 不在服务上下文中发送令牌
- java - 使用 Cloud Run 进行服务器流式传输
- javascript - 选择包含嵌套子元素的元素
- python - 在模型上拟合数据时出错。目标输出需要匹配
- sql-server - 始终使用 sa 用户执行触发器
- angular - 如何对从服务订阅 EventEmitter 的 Angular 组件进行单元测试?
- c++ - 声明引用另一个枚举类的枚举类