草庐IT

dll-interface

全部标签

c# - 我可以将 Activator.CreateInstance 与接口(interface)一起使用吗?

我有一个例子:Assemblyasm=Assembly.Load("ClassLibrary1");Typeob=asm.GetType("ClassLibrary1.UserControl1");UserControluc=(UserControl)Activator.CreateInstance(ob);grd.Children.Add(uc);我正在创建类的实例,但是如何创建实现某个接口(interface)的类的实例?即UserControl1实现了ILoad接口(interface)。U:我可以稍后将对象转换为接口(interface),但我不知道程序集中的哪个类型实现了该接

c# - 方法返回一个接口(interface)

大家好,我在这行代码中思考IDataReadermyReader=questDatabase.ExecuteReader(getQuest);我正在使用DAAB,但我无法理解方法ExecuteReader(DbCommand)返回IDataReader接口(interface)的方式和意义。任何人都可以解释,请 最佳答案 它允许您使用DataReader而无需知道您正在使用哪种类型的DataReader(即SqlDataReader、OleDbDataReader、EtcDataReader),所以如果有一天您想要更改您正在使用的D

c# - mscorlib.dll 中发生类型为 'System.StackOverflowException' 的未处理异常

我在asp.net中写了一段代码,从文件中读取数据并绘制图表。它工作了,但是当我运行程序一段时间后,出现了这个异常"Anunhandledexceptionoftype'System.StackOverflowException'occurredinmscorlib.dll"在代码中的这条语句中:if(File.Exists(fName)) 最佳答案 您的函数可能无限次地递归调用自身。有时这会间接发生(您在BCL中调用一个方法,它会回调您的代码,这样会不断重复)。File.Exists可能不是罪魁祸首。发生错误时查看您的调用堆栈。

c# - 无法加载文件或程序集 'Magick.NET-x86.DLL' 或其依赖项之一

我使用了Magick.NET,它是ImageMagick的.NET包装器,它在客户端机器上抛出上述错误。不过它在我的机器上运行良好。我还没有安装ImageMagick,所以我根本无法理解我需要在客户端机器上做什么。我安装了VS2012。此外,Magick.NET在其中包含ImageMagick,我认为它使用C++/CLI并向nativeImageMagick公开一个.NET接口(interface),所有这些都在一个DLL中。那么它需要什么DLL呢?(我刚遇到这个错误,所以发布了我找到的解决方案。) 最佳答案 Magick.NET需

c# - C# 中的接口(interface)与多重继承

我有一组A类和B类都有一些属性。和另一个具有自己属性的C类。每当我创建类C的实例时,我想使用objClassC访问所有三个类的所有属性。我如何在C#中实现这一点?我面临两个问题:-我不能同时继承类C中的类A、B(C#不支持多重继承)如果我使用接口(interface)而不是类A、B(在接口(interface)中我们不能包含字段) 最佳答案 为什么不在C类中包含A类和B类的实例。使用CompositionclassC{//classCpropertiespublicAobjA{get;set;}publicBobjeB{get;se

c# - 实现 IList 接口(interface)

我是泛型的新手。我想通过从IList派生它来实现我自己的集合界面。能否请您提供一些指向实现IList的类的链接?接口(interface)或提供至少实现Add的代码和Remove方法? 最佳答案 除了派生自List,你可以门面List并向您的外观类添加更多功能。classMyCollection:IList{privatereadonlyIList_list=newList();#regionImplementationofIEnumerablepublicIEnumeratorGetEnumerator(){return_list

c# - OOPS 概念 : What is the difference in passing object reference to interface and creating class object in C#?

我有一个类CustomerNew和一个接口(interface)ICustomer:publicclassCustomerNew:ICustomer{publicvoidA(){MessageBox.Show("Classmethod");}voidICustomer.A(){MessageBox.Show("Interfacemethod");}publicvoidB(){MessageBox.Show("ClassMethod");}}publicinterfaceICustomer{voidA();}我对这两行代码很困惑。ICustomerobjnew=newCustomerNe

c# - 接口(interface)还是抽象类?

对于我的新宠物项目,我有一个设计问题,这个问题已经确定了,但我也想就此提出一些其他意见。我有两个类(简化):classMyObject{stringname{get;set;}enumrelation{get;set;}intvalue{get;set;}}classMyObjectGroup{stringname{get;set;}enumrelation{get;set;}intvalue{get;set;}Listmyobjects{get;set;}}稍后在项目中MyObjectGroup和MyObject应该被同等使用。为此,我可以采用两种方式:创建接口(interface)

c# - 为什么C#中同时存在抽象类和接口(interface)?

如果我们可以通过将类中的所有成员都抽象化来实现接口(interface)特性,为什么C#中还要同时存在抽象类和接口(interface)。是不是因为:接口(interface)存在多重继承拥有接口(interface)是有意义的,因为对象的CAN-DO特性应该放在接口(interface)而不是基础抽象类中。请澄清 最佳答案 好吧,一个抽象类可以指定一些实现,但通常不是全部。(话虽如此,完全有可能提供一个没有抽象成员的抽象类,但有大量具有“无操作”实现的虚拟成员)。接口(interface)提供不实现,仅提供契约(Contract)

接口(interface)/基类中的 C# 枚举?

我对枚举有疑问我需要在基类或接口(interface)中创建一个枚举(但为空)classBase{publicenumTest;//???}然后在一些父类中进行不同的枚举classParent1{publicenumTest{A,B,C};}classParent2{publicenumTest{J,H,K};}现在当我必须使用枚举时,我有下一节有方法的课classTest{publicvoidFoo(Testenum){intvalue=(int)enum;//...}}有什么办法可以做到这一点吗?如果不是,我必须在每个类中使用静态整数...classParent1{publicst