草庐IT

dynamic-class

全部标签

c# - Class B 继承自 ClassA 时,如何将 List<Class> 转换为 List<Class>?

我将json字符串反序列化为List现在我想把它转换到List在我把它从BindModel方法。我需要转换,因为这些方法期望得到List.为什么我在转换时出错?毕竟,ClassB继承自ClassA.我该怎么办?附言这个问题是从thispost扩展而来的.在线newDataContractJsonSerializer(typeof(List));而不是List该类型将在运行时构建。publicoverrideobjectBindModel(...){varserializer=newDataContractJsonSerializer(typeof(List));MemoryStream

c# - ASP.net MVC View 是 "class"吗?

...首先,我这样做只是出于好奇。这里没有实际应用,只是为了了解和修补......ASP.NETView具有类似Model的属性和ViewData甚至还有方法。您甚至可以使用@Using就像普通的class.cs文件一样。我知道它的类型是WebPageView我的主要问题是:是一门课吗?应该是因为它是一个类型,但是..我应该也能做到这一点(Razor引擎):@{publicclassPerson{//etc...}varp=newPerson();}@p.Name但是我不能..为什么?注意:目前是C#、ASP.net初学者。 最佳答案

c# - 简易喷油器 : Factory classes that need to create classes with dependencies

我有一个工厂类,它创建了几个不同类型的类。工厂在容器中注册。鉴于它们也具有依赖性,在工厂内部创建类的推荐方法是什么。我显然想避免对容器的依赖,但如果我新建这些类,那么它们将不会使用容器。例如publicclassMyFactory{publicIMyWorkerCreateInstance(WorkerTypeworkerType){if(workerType==WorkerType.A)returnnewWorkerA(dependency1,dependency2);returnnewWorkerB(dependency1);}}所以问题是我从哪里获得这些依赖项。一种选择是使它们成

c# - C++/命令行界面 : How do I declare abstract (in C#) class and method in C++/CLI?

以下C#代码在C++/CLI中的等价物是什么?publicabstractclassSomeClass{publicabstractStringSomeMethod();} 最佳答案 只需稍微混合关键字即可获得正确的语法。abstract在C#中位于前面,但在C++/CLI中位于末尾。与override关键字相同,今天也被C++11兼容的编译器识别,它们期望它位于函数声明的末尾。就像传统C++中的=0标记函数抽象一样:publicrefclassSomeClassabstract{public:virtualString^SomeM

c# - 部分类(class)的目的是什么?

我读了aboutpartialclasses并且,例如,我理解在VisualStudio创建Windows窗体时使用它们的原因,但不排除whenworkingonlargeprojects,spreadingaclassoverseparatefilesenablesmultipleprogrammerstoworkonitatthesametime.后来我看了thisexample我注意到大多数类都被声明为部分类。为什么? 最佳答案 部分类很有用的一个很好的例子是当类由工具(如VS)自动生成并且您希望能够扩展该类的功能并且在工具需

c# - 如何使用动态LINQ(System.Linq.Dynamic)进行LIKE操作?

任何人都可以告诉我如何使用System.Linq.Dynamic来使用LIKE运算符吗??我需要在我的动态where查询中添加多个LIKE表达式/*varquery=db.Customers.Where("CityNameLike@0orCityNameLike@1","London","USA")*/varquery=db.Customers.Where("CityNameLike@0orCityNameLike@1%","London","USA")谢谢你 最佳答案 尝试简单地使用“CityName.Contains(@1)”,

C# 4.0 'dynamic' 没有设置 ref/out 参数

我正在试验DynamicObject。我尝试做的一件事是设置ref/out参数的值,如下面的代码所示。但是,我无法正确设置Main()中的i和j的值(即使它们在TryInvokeMember())。有谁知道如何使用ref/out参数调用DynamicObject对象并能够检索方法中设置的值?classProgram{staticvoidMain(string[]args){dynamicproxy=newProxy(newTarget());inti=10;intj=20;proxy.Wrap(refi,refj);Console.WriteLine(i+":"+j);//Print"

c# - 哪个是 delphi "class of "(类的类型)的 C# 声明?

在delphi中,我可以像这样声明一个类型的类typeTFooClass=classofTFoo;TFoo=classend;此声明的C#等效项是什么? 最佳答案 您在C#中可以获得的最接近的是Type类型,它包含有关类型的元数据。publicclassA{}publicstaticintMain(string[]args){Typeb=typeof(A);}这不是完全相同的。在Delphi中,“其他类型的类型”本身就是可以分配给变量的类型。在C#中,“其他类型的类型”是一个System.Type实例,可以分配给System.Typ

c# - 在抽象父类(super class)的子类中强制使用属性

如何强制子类实现其父类(superclass)的某些属性?原因是我想使用属性来获取有关该类的一般信息,例如“显示名称”、“说明”或“功能”。所以我想我可以在父类(superclass)中实现它们并强制子类实现这些属性。是否有类似于方法的抽象属性?[abstractDeclareMe]publicabstractclassInheritMe{publicabstractvoidDeclareMe();} 最佳答案 由于你的类迟早要运行,你可以在你的基类中添加检查机制来验证你的子类中某些属性的存在。这里有一些示例代码。classProg

c# - 在C#中使用 'dynamic'实现访客模式

我有一个应用程序,我在其中对一系列元素执行操作,操作的确切性质取决于所操作元素的类型。由于封装的原因,不宜由元素来实现操作;这意味着它不能是元素类型的虚拟方法,因此“标准”多态性不起作用。我提出了previousquestion与此相关,并被告知这被称为访问者模式。我以前总是根据对象的类型使用if/elseif调度程序方法来实现它,然后调用适当的实现。然而,最近,我注意到使用dynamic关键字也可以完成同样的事情,如下所示:privatevoidReconcileTips(){foreach(varstepin_definition.Steps){ReconcileTips((dyn