草庐IT

dll-injection

全部标签

c# - 简单注入(inject)器在 Owin 启动期间无法注入(inject)每个 Web API 请求注册类

我正在使用Owin、WebAPI、EntityFramework、ASP.NETIdentity创建API。我正在使用SimpleInjector作为我选择的DI框架。在Owin启动过程中,我想用一些样本数据为我的数据库做种。这是由实现IDatabaseInitializer的类处理的,它看起来像这样:publicclassMyDbInitializer:DropCreateDatabaseAlways{privatereadonlyIUserManager_userManager;publicMyDbInitializer(IUserManageruserManager){_user

c# - 什么时候使用 C# 类库 (.dll) 合适?

我是一名从未真正使用过.dll文件的程序员。当然,当我需要第3方软件时,例如图形库、帮助我创建图形的库等。我会将引用/ddl文件添加到我的程序中并在我的代码中使用它们。此外,您似乎可以将.dll用于很多不同的事情,所以我希望这个主题集中在C#上。现在我正在开发一个清理库(?)(我认为这是正确的术语),它将充满相关的方法,可以以各种不同的方式清理变量。我想知道的是:有什么好处:1)将方法写入类库->编译/构建它->添加库作为对程序的引用-这需要清理一些变量?或者如果我在哪里,它会完全一样吗:2)在程序中新建一个SanitizeClass->添加所有sanitize方法->在程序中需要清理

c# - 如何使用 PowerShell 使用 C# DLL 中存在的类的新对象

我有一个C#类,例如publicclassMyComputer:PSObject{publicstringUserName{get{returnuserName;}set{userName=value;}}privatestringuserName;publicstringDeviceName{get{returndeviceName;}set{deviceName=value;}}publicstringdeviceName;}派生自PSObject。我正在使用导入模块在powershell中加载具有此代码的DLL。然后我尝试在PowerShell中创建MyComputer类的新对象

c# - 中止对非托管 DLL 的调用

我有一个非托管DLL,如果输入参数是一个大值,它可以运行很长时间的函数,有时这是可取的,但并非总是如此。我如何在C#中调用此函数以便在需要时可以中止它?到目前为止,我已经尝试将调用放在一个单独的线程中,但中断和中止似乎都无法停止该进程,该进程以100%CPU运行,直到dll完成。是否可以终止正在运行的dll代码? 最佳答案 非托管代码只有在处于“可警告等待状态”时才可中止。当它消耗100%的CPU周期时不会。P/InvokingTerminateThread会起作用,前提是您可以获得线程句柄,而这在.NET中变得非常困难。无论如何它

c# - 查看c#中的dll注释

我写了我的函数的c#注释,然后我把dll文件给了我需要的friend,但是当他使用那些函数时,他看不到注释,如何解决这个问题?ps:我在项目中使用的时候可以看到评论; 最佳答案 评论被剥夺了程序集,你必须generatethexmldocumentation为您的项目并将其交给您的friend。如果两个文件(程序集和xml文档)位于同一目录中,VisualStudio将使用IntelliSense中的文档。(Xml文档can'tbeembeddedinassembly) 关于c#-查看c

c# - 我可以通过 gacutil 安装,但不能卸载相同的 dll

我已经使用gacutil安装了一个DLL。gacutil.exe/iSI.ArchiveService.CommonLogic.Exceptions.dll使用gacutil/l显示确实安装了。SI.ArchiveService.CommonLogic.Exceptions,Version=1.0.0.0,Culture=neutral,PublicKeyToken=925c8734ae397609,processorArchitecture=MSIL然后我想卸载它。gacutil.exe/uSI.ArchiveService.CommonLogic.Exceptions.dllMic

c# - 在应用依赖注入(inject)时,Func<in T, out TResult> 是否适合用作 ctor arg?

例子:publicclassBusinessTransactionFactorywhereT:IBusinessTransaction{readonlyFunc_createTransaction;publicBusinessTransactionFactory(FunccreateTransaction){_createTransaction=createTransaction;}publicTCreate(){return(T)_createTransaction(typeof(T));}}使用相同的容器设置代码:publicclassDependencyRegistration:

c# - .NET Framework 中的控制反转和依赖注入(inject)

在.NETFramework本身中是否有将DI作为架构原则或设计模式应用的具体示例/实例?框架/BCL中的任何(或许多)类型是否符合IoC?类型名称和基于C#的简短说明/解释会很棒!这会使将DI注入(inject)设计原则作为最佳实践的需求变得更加复杂......因为它是从基础框架本身收集而来的。我重申,我不是在为IoC/DIIN框架寻找IoC/DI框架而是。编辑:只是想获得更多的实例/示例......因此赏金! 最佳答案 一般来说,BCL中没有很多DI的例子——也许是因为BCL是一个相当独立的框架,而DI更多的是一个应用程序架构问

c# - 依赖注入(inject)和其他构造函数参数 - 不好的做法?

目前我正在尝试使用依赖注入(inject)容器,这次是使用Unity。给定以下界面:publicinterfaceIPodcastCommService{voidDownload();voidUpload();}和以下实现:publicclassPodcastService{privateIPodcastCommServicecommservice;privateStringurl;publicPodcastService(Stringurl,IPodcastCommServicecommservice){this.commservice=commservice;this.url=ur

c# - DI Framework : how to avoid continually passing injected dependencies up the chain, 且未使用服务定位器(特别是使用 Ninject)

我需要更多帮助才能“了解”像Ninject这样的DI框架如何超越基础知识。以Ninject为例:classSamurai{privateIWeapon_weapon;[Inject]publicSamurai(IWeaponweapon){_weapon=weapon;}publicvoidAttack(stringtarget){_weapon.Hit(target);}}如果没有DI框架(即上面的[Inject]引用),引用类将类似于:classProgram{publicstaticvoidMain(){Samuraiwarrior1=newSamurai(newShuriken