【c# – 依赖注入问题 – 如何清理我的实现?】教程文章相关的互联网学习教程文章

C#设计模式之控制反转即依赖注入-微软提供的Unity【代码】【图】

使用VS2015的Nuget管理器下载Unity。 程序员接口类:1 namespace UnityDemo 2 { 3 public interface IProgrammer 4 { 5 void Working(); 6 } 7 }程序员类: 1 using System;2 3 namespace UnityDemo4 {5 public class CSharp : IProgrammer6 {7 public void Working()8 {9 Console.WriteLine("programming C# ..."); 10 } 11 } 12 13 public class VB :...

C#自定义应用程序上下文对象+IOC自己实现依赖注入【代码】【图】

以前的好多代码都丢失了,加上最近时间空一些,于是想起整理一下以前的个人半拉子项目,试试让它们重生。自从养成了架构师视觉 搭建框架之后,越来 越看不上以前搭的框架了。先撸个上下文对象加上实现依赖注入。由于还是要依赖.net 4,所以像Autofac这样的就用不了,于是仿照着实现了。 /// <summary>/// 自定义应用程序上下文对象/// </summary>public class AppContextExt : IDisposable{/// <summary>/// app.config读取///...

c#-Service Fabric Actor服务依赖注入和Actor事件【代码】

当actor服务启动时,我想自动将任何事件订阅为described in the documentation.手动订阅事件是可行的.但是,当实例化服务时,是否可以像OnActivateAsync()中那样自动订阅参与者服务? 我试图做的是通过依赖注入解决此问题,该依赖注入在MyActor类的实例化时将其传递给OnActivateAsync调用以为客户端订阅事件的接口.但是我在依赖注入方面遇到了问题. 应该使用Microsoft.ServiceFabric.Actors.2.2.207支持对Actor服务的依赖注入.现在,在实...

使用StructureMap.DependencyInjection在C#dotnet core 2.0中进行简单的代理类依赖注入【代码】

我使用dotnet core 2.0和StructureMap.Microsoft.DependencyInjection进行IoC和依赖注入.我正在尝试创建一个代理类进行验证.我想暗示给国际奥委会的DI使用ComponentDataAccessorProxy只要使用IComponentDataAccessor也满足ComponentDataAccessorProxy依赖是ComponentDataAccessor并满足它的依赖是IMongoDatabase没有进入循环依赖例外.我想知道是否有可能.任何帮助将不胜感激. 这是界面:public interface IComponentDataAccessor {...

C# 依赖注入与控制反转【代码】

依赖注入(Dependency Injection:DI): 程序运行过程中,如果需要调用另一个对象协助时,无须在代码中创建被调用者,而是依赖于外部的注入。 通俗来讲,就是把有依赖关系的类放到容器中,然后在我们需要这些类时,容器自动解析出这些类的实例。 依赖注入最大的好处时实现类的解耦,利于程序拓展、单元测试、自动化模拟测试等。 控制反转(Inversion of Control:IOC): 控制反转只是一个概念...

C#中的依赖注入和IoC容器【代码】【图】

在本文中,我们将通过用C#重构一个非常简单的代码示例来解释依赖注入和IoC容器。 简介:依赖注入和IoC乍一看可能相当复杂,但它们非常容易学习和理解。 在本文中,我们将通过在C#中重构一个非常简单的代码示例来解释依赖注入和IoC容器。要求:构建一个允许用户查看可用产品并按名称搜索产品的应用程序。第一次尝试:我们将从创建分层架构开始。使用分层架构有多个好处,但我们不会在本文中列出它们,因为我们关注的是依赖注入。 下...

c#反射与依赖注入【代码】

反射是.net框架的功能,不只是c#语言的功能。 依赖反转是一个概念,但是依赖注入是在概念基础之上结合接口和反射机制所形成的应用。 依赖注入最重要的是有一个container容器,各种各样的类型和对应的接口都放到容器里面,在.NET Freamwork中,有一个第三方容器Unity, 但是在.NET Core里面,是IServiceCollection。 下面是简单依赖注入的方法namespace TestClass {class Program{static void Main(string[] args){//var driver = n...

C#反射与特性(六):设计一个仿ASP.NETCore依赖注入Web【图】

目录 1,编写依赖注入框架 1.1 路由索引 1.2 依赖实例化 1.3 实例化类型、依赖注入、调用方法2,编写控制器和参数类型 2.1 编写类型 2.2 实现控制器3,实现低配山寨 ASP.NET Core 【微信平台,此文仅授权《NCC 开源社区》订阅号发布】 从前面第四篇开始,进入了实践练习;第五篇实现了实例化一个类型以及对成员方法等的调用。当然,还有一些操作尚将在后面的章节进行介绍。 因为本系列属于实践练习,所以系列文章可能比较多,内容比...

c#-MVC3中的Ninject依赖注入-控制器外部【代码】

我们在MVC3项目中使用Ninject进行依赖项注入.我使用NuGet将软件包引用添加到Ninject和Ninject.MVC3软件包.当我这样做时,它在我的App_Start文件夹中创建了一个NinjectMVC3类:public static class NinjectMVC3 {private static readonly Bootstrapper bootstrapper = new Bootstrapper();public static void Start(){DynamicModuleUtility.RegisterModule(typeof(OnePerRequestModule));DynamicModuleUtility.RegisterModule(typeof...

c#-在基本控制器中实现依赖注入的最佳方法是什么【代码】

我有以下麻烦,在我的基本控制器中,我做了依赖注入.而且我有一个带有基本控制器实现的子类,我需要通过构造函数.所以我的疑问是,实现依赖注入的方法正确吗?如果没有,什么是最好的方法? 我使用unity来实现D.I,我的想法是VS2017 Web API 2. 遵循此代码,我使用:基本控制器或父控制器:public class BaseController : ApiController {public string[] includes = null;private readonly IFiltroServico servico;public BaseController...

c#-对工作单元的依赖注入【代码】

我遇到一个问题,我的工作单元在调用时不会创建AppSettings实例.工作单元用于我的存储库数据层. 出现此错误:An unhandled exception occurred while processing the request.NullReferenceException: Object reference not set to an instance of anobject. Core.UnitOfWork..ctor() in UnitOfWork.cs, line 24 Stack Query Cookies Headers NullReferenceException: Object referencenot set to an instance of an object. Core.U...

C#依赖注入无法将Lambda转换为预期的委托【代码】

无法将lambda转换为预期的委托,因为该块中的某些返回类型未隐式转换为委托返回类型. 没有DIvar chromeDriverService = ChromeDriverService.CreateDefaultService(); var chromeOptions = new ChromeOptions(); chromeOptions.AddArguments(new List<string>() { "headless" });ChromeDriver driver = new ChromeDriver(chromeDriverService, chromeOptions);在Startup.cs中使用DIservices.AddScoped<ChromeDriverService>((servic...

C#-ReactiveUI依赖注入构造函数【代码】

我在ReactiveUI中使用内置的依赖项注入器/ splat注入器. 我有要传递其适用的数据存储库的构造函数. 在其他框架中,它仅对接口使用反射,并使用GetServices调用来满足那些构造函数要求.例如,目前我具有用于创建类的此辅助程序扩展方法:/// <summary>/// Helper class for having a object's constructor automatically assigned by a "GetService" request./// </summary>/// <param name="resolver">The resolver.</param>/// <para...

C#-动态依赖注入【代码】

第二种方法 我有一系列应用程序,它们提供了一组可扩展(即不固定)的变量,供各种插件使用. 例如: >日志事件的来源>计算结果来源>系统资源使用情况的来源>绩效指标来源> … 插件可以使用这些的任何组合. 示例插件可以是: >使用1的自定义错误记录器.>使用2的自定义统计模块.>使用3.和4的性能工具. 我想要实现的是 >给出给定此应用程序中存在的一组变量可以使用的插件列表(当没有日志事件源时,您应该不能选择自定义错误记录器).>获得一...

c#-依赖注入以在MVVM中以对话框形式启动视图【代码】

我需要一些建议,以了解如何在ViewModel中处理依赖项注入.我的viewModel MenuViewModel有一个ICommand方法,当用户单击视图中的按钮时,该方法将运行.此方法将打开一个新窗口.该方法如下所示.public void bookingCommand_DoWork(object obj) {BookingView bookingView = new BookingView();BookingViewModel model = new BookingViewModel();bookingView.DataContext = model;bookingView.ShowDialog(); }它创建BookingView和BookingV...