【c#-ASP.NET Core 2.0依赖注入默认实例】教程文章相关的互联网学习教程文章

c# – 依赖注入.准备ASP.NET vNext

我们目前需要在C#中实现IoC容器,因为在我们项目的最后几周内,依赖关系正在显着增长. 我们不会(至少现在)使用IoC所具有的所有功能,但使用构造函数注入和(很少)属性注入. 我用default DI in ASP.NET vNext玩了一下,这对我们来说已经足够了. 问题是,由于vNext还没有准备好生产,我正在寻找一个使用“同一种语言”的IoC容器,也就是最相似的一种. 我没有在网上找到这些信息,而且我没有经验或知识来自己评估. 您认为哪个容器最适合a)初学者...

c# – 依赖注入和项目引用【代码】

参见英文答案 > Ioc/DI – Why do I have to reference all layers/assemblies in application’s entry point? 4个我正在尝试了解DI,以便更好地了解IoC以及其他好处. Pre DI,我有一个项目,它有一个UI项目(MVC),一个BusinessLogic项目和一个DataAccess项目.我也有一个SharedLib项目.所有项目都引用了SharedLib. UI引用了BusinessLogic,BusinessLogic引用了DataAccess. 我想现在添加接口.所以我...

c# – Specflow中的依赖注入,它是每个功能的一个上下文对象吗?【代码】

在Specflow中,可以使用dependency injection在步骤定义之间共享上下文 这是否意味着您最终为每个功能提供了不同的“上下文”类? 如果是这样,这不会使跨功能共享步骤定义变得不切实际吗?你认为已经设置了字段吗?解决方法:Does this mean that you end up with a different “context” class for each feature?我不认为会是这种情况.在编写规范时,您肯定会提到系统的几个“类型”部分.假设我们有以下情况:Scenario: List todo i...

c# – Specflow中的依赖注入,它是每个功能的一个上下文对象吗?【代码】

在Specflow中,可以使用dependency injection在步骤定义之间共享上下文 这是否意味着您最终为每个功能提供了不同的“上下文”类? 如果是这样,这不会使跨功能共享步骤定义变得不切实际吗?你认为已经设置了字段吗?解决方法:Does this mean that you end up with a different “context” class for each feature?我不认为会是这种情况.在编写规范时,您肯定会提到系统的几个“类型”部分.假设我们有以下情况:Scenario: List todo i...

c# – 这是依赖注入吗?【代码】

参见英文答案 > What is dependency injection? 34个如果我更改下面的代码,是否依赖注入class Needer {Needed obj;AnotherNeeded obj2;public Needer(){obj = new Neede();obj2 = new AnotherNeede();} }到这个代码class Needer {Needed obj;AnotherNeeded obj2;public Needer(Needed param1, AnotherNeeded param2){obj = param1;obj2 = param2;} }解决方法:Robert C. Martin在his SOLID desi...

c# – 依赖注入ASP.NET MVC 3中的说明和DependencyResolver?

我有一个服务(AccountService),它有大约八种方法.其中一种方法发送电子邮件.我有另一个服务(EmailService),它是注入AccountService的构造函数. 我想知道是否有必要这样做,因为感觉就像每次我添加一个依赖于一个方法的功能我必须改变我所有的测试,我正在模拟构造函数的依赖项.这感觉就像DI实际上更难改变事物,而不是更容易. 所以我正在考虑在我的控制器操作中使用DependencyResolver,它调用AccountService来获取EmailService并将其传...

c# – 尝试使用MEF将依赖注入到IIS托管的WCF服务中【代码】

我正在尝试将特定的类注入我的WCF服务,但它不起作用,我无法理解为什么.我对MEF和模式非常陌生,只是想让它发挥作用.观看了一系列视频来了解它的含义,但引导不适用于我的情况,因为它不是Silverlighthttp://channel9.msdn.com/blogs/mtaulty/mef–silverlight-4-beta-part-1-introduction 这是我的Web应用程序的Global.asax代码.这是非MVC,只是常规的ASP.NET应用程序:private void Application_Start(object sender, EventArgs e){Re...

c# – 有两个构造函数是正确的,一个用于依赖注入,另一个用于解析注入?【代码】

我班上有2个构造函数:public class VuelingCacheWebServices : IVuelingCacheWebService{public IVuelingCache apiConnector { get; set; }public VuelingCacheWebServices(IVuelingCache ApiConnector){apiConnector = ApiConnector;}public VuelingCacheWebServices(): this(new VuelingCache()){ }}如您所见,我有一个构造函数,具体取决于IVuelingCache和一个默认构造函数,它创建一个传递给第一个构造函数的实例.这是对的吗?通...

c# – ASP.NET依赖注入HTTP模块(MS企业库)【代码】

我一直在按照“Microsoft Enterprise Library 5.0”文档中的步骤创建一个HTTP模块,以将对Enterprise Library容器的引用注入到ASP.NET Web应用程序的页面中. 它包含以下代码(也出现在线here):using System; using System.Collections.Generic; using System.Web; using System.Web.UI; using Microsoft.Practices.Unity;namespace Unity.Web {public class UnityHttpModule : IHttpModule{public void Init(HttpApplication contex...

在C#中正确使用依赖注入和YAGNI混淆【代码】

我知道你应该依赖于抽象而不是具体实现,但我也知道YAGNI原则.我有时会发现自己正在努力调和这两方面. 考虑以下类别;public class Foo {public void DoFoo(){}//private foo stuff }public class Bar {private readonly Foo _foo;public Bar(){_foo = new Foo();} }“Bar”是我感兴趣的课程;显然有一个问题,Bar正在实例化一个Foo的实例,所以让我重构一下;public class Bar {private readonly Foo _foo;public Bar(Foo foo){_foo = f...

c# – 当没有使用所有实例时,依赖注入是一个好主意吗?【代码】

我支持在您的应用程序上使用依赖注入,尽管有些人认为它会给代码增加不必要的复杂性.在过去的几天里,我想知道,在某些情况下,使用DI时可能会有一些浪费. 让我用代码示例解释一下: 使用DIpublic class Class {private Service1 service1;private Service2 service2;public MyClass (Service1 service1, Service2 service2) {this.service1 = service1;this.service2 = service2;}private int SampleMethod() {Console.WriteLine("do...

c# – 从另一个控制器调用控制器时的依赖注入【代码】

我有一个ASP.NET 5.0(vnext)项目,我正在实现Web Api和Mvc前端.我希望我的Mvc控制器能够调用Web Api控制器,它正常工作.我在http://www.asp.net/vnext/overview/aspnet-vnext/create-a-web-api-with-mvc-6的例子中构建了api,它运行良好. Mvc前端可以成功调用WebApi控制器,但是当我从Mvc控制器实例化它时,依赖注入框架不会提供ITodoRepository.public class Startup {public void Configure(IApplicationBuilder app, ILoggerFactory ...

c# – 具有依赖注入的CQRS【代码】

这应该是一个非常快速的问题.我正在尝试学习CQRS模式,有一点不清楚.有两个调度程序:用于命令和查询.他们都需要注入DI内核才能获得合适的处理程序.例如:var handler = _resolver.Resolve<IQueryHandler<TQuery, TResult>>();是不是违反了DI的概念,决不应该使用Resolve,所有内容都应该注入构造函数/属性? 有一个更大的例子:http://www.adamtibi.net/06-2013/implementing-a-cqrs-based-architecture-with-mvc-and-document-db 请...

c# – 在基础架构层中使用依赖注入【代码】

我在ASP.net Core中创建了一个示例项目使用了四个层,如下所示我还在我的API项目中的startup.cs中实现了依赖注入.它的工作完美.services.AddTransient<IUserRepository, UserRepository>();我有两个问题要问. >我的Infrastructure层可以依赖注入,而不是API层吗?如果是的话,你能指导我怎么做吗?>如果我错了,请纠正我,如果Asp.Net Core默认具有依赖注入,那么我们不需要Autofac(或类似的第三方DI插件).对?让我重新解释一下这个问题....

c# – dotnet core获取依赖注入的已加载程序集列表【代码】

我正在使用AutoFac根据其接口实现自动注册依赖项,如下所示:builder.RegisterAssemblyTypes(Assembly.GetEntryAssembly()).AsImplementedInterfaces();这适用于入口组件,但是所有相关组件呢? 我想做点什么:IList<Assembly> assemblies = GetLoadedAssemblies(); foreach(var assembly in assemblies) {builder.RegisterAssemblyTypes(assembly).AsImplementedInterfaces(); }我用AssemblyLoadContext等搜索并查看了一堆.netcore ...