在我的情况下,某些类不依赖于单个对象,而是依赖于它们的集合:
public class ImportController { ...
public ImportController(IEnumerable<IImportManager> managers) { ... }
}
public class ProductAImportManager : IImportManager { ... }
public class ProductBImportManager : IImportManager { ... }
public class ProductCImportManager : IImportManager { ... }
Run Code Online (Sandbox Code Playgroud)
我想使用Unity实例化ImportController,那么我应该如何注册依赖项呢?
如果我使用类似的东西
unityContainer.RegisterType<IImportManager, ProductAImportManager>();
unityContainer.RegisterType<IImportManager, ProductBImportManager>();
Run Code Online (Sandbox Code Playgroud)
第二次通话只会覆盖第一次通话.
有没有办法让Unity找到所有注册的实现IImportManager接口的类型,实例化这些类型并将对象序列传递给我的构造函数?
我正在尝试自动化部署过程,作为其中的一部分,我需要从命令行运行我的发布版本.我可以使用命令这样做
.\TFSBuild start http://server-name:8080/tfs/project-collection project-name build-name priority:High /queue
它甚至为排队的构建返回一些代码 - Build queued. Queue position: 2, Queue ID: 11057.
我不知道的是,如何获取有关当前正在运行的构建的信息,或者从powershell命令行获取正在运行的构建的状态?最终目标是在构建完成后开始发布.
我已经拥有了所有必要的powershell脚本来从构建结果创建部署包,压缩它,复制到生产并安装在那里.我现在所需要的 - 知道我的构建何时成功.