草庐IT

进程注入

全部标签

c# - 依赖注入(inject)容器?它有什么作用?

我一直在阅读有关DI的资料,它似乎是一个足够简单的概念。我没有得到的是容器。假设我想创建自己的容器。使用了像“检测”这样的动词,但我不明白容器是如何“检测”到一个新的依赖对象已创建并知道注入(inject)它的依赖项的。在我看来,容器就像是一家美化的工厂。任何人都可以解释容器的实际实现方式,或者可以为我指出一种资源吗?谢谢! 最佳答案 这取自WindsordocumentationInversionofControlInversionofControlisaprincipleusedbyframeworksasawaytoallow

c# - 我如何构建一个包含大量 IF 语句的程序(进程)

我必须为一种复杂的过程创建一个程序。好吧,这个过程并不复杂,但是控制过程的变量很多。我无法详细讲述这个过程,所以我编了一个,它具有相同的IF负载:过程是:我们是否应该停止熔铁炉。我们有这些参数:如果温度超过800摄氏度,请停止除了,当我们预计在接下来的20分钟内可以从toastr2获得冷水时,我们可以继续除了,当温度在接下来的10分钟内上升10度时,我们不能再等10分钟的冷水,所以我们必须停下来。除非,当温度由于某种原因下降到790-800度并持续5分钟时,我们会在需要额外冷水的时间上额外增加5分钟。除非,当温度由于某种原因下降到780-790度并持续5分钟时,我们会在需要额外冷水的时

c# - Workflow Foundation 4 中的依赖注入(inject)/IoC

是否可以在您的工作流事件中使用DI?如果是,怎么做?例如,如果您有这样的事件publicsealedclassMyActivity:CodeActivity{publicMyClassDependency{get;set;}protectedoverridevoidExecute(CodeActivityContextcontext){Dependency.DoSomething();}}如何设置依赖?(我正在使用Spring.Net) 最佳答案 工作流不使用IOC容器。它使用ServiceLocator模式,您可以在其中将依赖项作

c# - 如何检查进程是否没有响应?

如果另一个进程没有响应,是否有可能从代码中检查?问题是即使应用程序崩溃并且在管理器的列表中被标记为“无响应”,Process.Responding属性仍然返回“真”。“已退出”事件和函数“WaitForExit”会在进程明确退出时执行任何操作。所以这不是重点。两个词的问题;我需要知道应用程序崩溃了。如何从代码中查看?感谢您的宝贵时间。 最佳答案 这个问题没有通用的解决方案。不可能判断特定进程是否挂起,因为术语“挂起”完全取决于正在执行的进程的上下文。挂起的进程将始终执行它被编码要做的事情。开发人员可能编码不当,但Windows无法假

c# - 如何在长时间的服务器进程中显示信息丰富的实时进度数据

我有一个很长的过程可能需要1小时。这个过程由许多步骤组成,年复一年。我的主要问题是:如何在此过程中向最终用户提供信息丰富的实时进度,而不仅仅是一个虚拟加载栏。intindex=Convert.ToInt32(e.CommandArgument);booldone=false;intres=-1;intfromVal=int.Parse(gv_balance.Rows[index].Cells[0].Text);inttoVal=int.Parse(gv_balance.Rows[index].Cells[1].Text);intfinMonth=1;intfinYear=0;intEn

c# - 在 Web API 和 OWIN 中使用简单注入(inject)器

我遇到了与describedhere相同的问题我的设置几乎是identicaltothis这实际上是基于thisguide.当我在我的Controller中访问一个方法时,我得到了这个Anerroroccurredwhentryingtocreateacontrolleroftype'TestController'.Makesurethatthecontrollerhasaparameterlesspublicconstructor.这是堆栈跟踪atSystem.Web.Http.Dispatcher.DefaultHttpControllerActivator.Create(Http

c# - AppDomain 是否等同于 .NET 代码的进程?

我必须调用一些写得不好的第3方COM组件,这些组件存在内存泄漏并在长时间运行的进程中使用单线程单元[STA]。我知道单独的进程将是实现它的好方法,我可以偶尔从长时间运行的进程中重新启动它。可以使用AppDomain代替吗?如果适当标记,AppDomain线程是否为STA线程?它有自己的COM对象内存吗?卸载AppDomain是否等同于终止进程? 最佳答案 AppDomain不提供与进程相同程度的隔离。事实上,如果您担心第3方组件状态不佳,则存在风险,它会破坏您的.NET应用程序。如果卸载时正在执行非托管代码,则无法卸载AppDoma

c# - asp.net MVC5 - 依赖注入(inject)和 AuthorizeAttribute

我搜索了很长时间来解决我的问题。我有一个自定义AuthorizeAttribute,它需要对有权访问DbContext的“服务”具有依赖性。遗憾的是,依赖注入(inject)在自定义AuthorizeAttribute中不起作用,并且始终为null。我想出了一个(对我而言)可以接受的解决方案。现在我想知道我的解决方案是否会导致不可预见的行为?Global.asax.csCustomAuthorizeAttribute.AuthorizeServiceFactory=()=>unityContainer.Resolve();CustomAuthorizeAttribute.cs[Attr

c# - nunit 测试仅在作为 tfs msbuild 进程的一部分运行时抛出异常

我正在使用TFS2012从VisualStudio2015构建和部署解决方案,没有任何问题。我决定将我的单元测试作为构建过程先决条件的一部分。独立于msbuild进程,单元测试运行没有问题并成功;但是,当我将它们合并为构建过程的一部分时,我在构建中遇到以下异常:ExceptionNUnit.Core.UnsupportedFrameworkException,ExceptionthrownexecutingtestsinD:\Builds\4\PA1111CE\Dev1111dBus\bin\mmmTests.dllNotestisavailableinD:\Builds\4\PA11

c# - Ninject + MVC3 没有注入(inject) Controller

我使用了NuGetNinjectMVC3扩展,但无法根据请求将其注入(inject)Controller。它似乎没有绑定(bind),因为MVC正在寻找无参数构造函数。这是堆栈跟踪:[MissingMethodException:Noparameterlessconstructordefinedforthisobject.]System.RuntimeTypeHandle.CreateInstance(RuntimeTypetype,BooleanpublicOnly,BooleannoCheck,Boolean&canBeCached,RuntimeMethodHandleInter