activator相关内容

.NET:无法将对象转换为它实现的接口

我有一个类 (TabControlH60),它既继承自基类 (UserControl),又实现了接口 (IFrameworkClient).我使用 .NET Activator 类实例化对象.使用返回的实例,我可以转换为 UserControl 基类,但不能转换为接口.我得到的例外是在代码片段下方.如何投射到界面? object obj = Activator.CreateInstance(ob ..
发布时间:2021-12-31 14:25:05 C#/.NET

C# 使用 Activator.CreateInstance

昨天我问了一个关于使用反射或策略模式动态调用方法的问题. 但是,从那时起我决定将方法更改为实现公共接口的单个​​类.原因是,每个类在具有某些相似性的同时也执行该类特有的某些方法. 我一直在使用这样的策略: 开关(方法){案例“枢轴":返回新的枢轴(原始数据);案例“GroupBy":返回新的 GroupBy(originalData);案例“标准偏差":返回新的标准偏差(原始数据); ..
发布时间:2021-12-26 14:39:53 C#/.NET

如何使用 Activator 创建泛型类型的实例并将其转换回该类型?

我有一个通用类型 Store 并使用 Activator 来创建这种类型的实例.现在,在使用 Activator 之后,如何将 object 类型的结果对象转换回实例化类型?我知道我用来实例化泛型的类型.请看以下代码: class Store其中 T : IStorable{}啤酒类:IStorable{}类 BeerStore : Store{}类型 storeType = someObjec ..
发布时间:2021-12-26 14:35:05 C#/.NET

快速创建对象而不是 Activator.CreateInstance(type)

我正在努力提高应用程序的性能.我们有很多 Activator.CreateInstance 调用引起了一些麻烦. 我们基于一个接口(ITabDocument)实例化了很多类,环顾四周后,我想到了使用这段代码: 代码并不比使用我们拥有的 Activator.CreateInstance 代码更好(实际上稍微慢一点). public static Func;CreateInstance ..
发布时间:2021-12-26 14:13:36 C#/.NET

如何使用反射动态创建通用 C# 对象?

在 C# 中,我有以下对象: 公共类项目{ }公共类 Task{ }公共类 TaskA:任务{ }公共类 TaskB:任务{ } 我想使用 C# 反射 (Activator.CreateInstance) 动态创建 TaskA 或 TaskB.但是我事先不知道类型,所以我需要根据字符串动态创建 TaskA,如“namespace.TaskA"或“namespace ..
发布时间:2021-12-15 09:21:09 C#/.NET

通讯C#创建com对象的类型

我正在开发一些使用库的代码.我正在尝试通过 创建类的实例 Type t = Activator.CreateInstance("TypeID"); 但是我无法一直得到类型= null.progid已经通过Ole/COM Wever查看了,看来我输入正确了.可能是什么问题? 解决方案 您是否传递Type ID字符串?尝试先从ProgId获取类型对象: Type t = Type ..
发布时间:2021-04-23 19:07:09 C#/.NET

Activator.CreateInstance不适用于隐式强制转换方案

我正在尝试使用 Activator.CreateInstance 方法动态创建新实例。但是,当我传递一个可以隐式转换为实际类型(在构造函数中)的类的实例时,就会得到 System.MissingMethodException 。 这是我用来验证的测试代码: 使用系统; 命名空间ActivatorTest1 { class Program { static void Mai ..
发布时间:2020-06-04 18:55:39 C#/.NET

Castle Windsor组件活化剂的预期生活方式是什么?

我正在使用Castle Windsor和DynamicProxy从零开始实现持久性延迟加载(我知道NHibernate可能是一个选择,等等。)我实现了一个自定义组件激活器,始终将我的业务类实例化为代理。我发现从类本身内部调用类方法时,没有使用使用拦截器时自动创建的默认混合代理,这是一个问题。因此,我继承了DefaultComponentActivator并重写了CreateInstance(),我 ..
发布时间:2020-06-04 18:55:35 其他开发

如何创建类的实例并从Bag对象(如会话)设置属性

该类将在运行时中声明,并且值存储在 Bag 对象,例如 session 或 ViewBag 。现在,我想创建该类的一个实例,并使用Bag数据设置其属性。我知道我应该使用 reflection ,但是我不知道是否有开箱即用的方法做这样的事情,或者我应该创建一个? session [“ Foo”] =“ foo”; session [“ Bar”] =“ bar”; var ins ..
发布时间:2020-06-04 18:55:27 C#/.NET

Activator.CreateInstance抛出参数'Type'的ArgumentNullException

我最近遇到了我的个人资料提供商的问题:它无法正确检索个人资料(请参见下面的错误)。它可以在本地运行,但是当我将由Web部署项目编译的代码放在服务器上时,将崩溃。 值不能为null。 参数名称:类型 说明:在 执行 当前Web请求的过程中发生未处理的异常。请查看堆栈跟踪,以获取有关错误及其在代码中起源的更多 信息。 Strack跟踪: [ArgumentNullExcep ..
发布时间:2020-06-04 18:55:22 C#/.NET

使用类型变量进行转换

下面的代码不起作用,我想知道如何将实例动态转换为在运行时确定的类型? Convert.ChangeType()返回仍然需要转换的对象。调用Invoke(),GetConstructor()或Activator.CreateInstance()的所有尝试也是如此,请参见下文。在某些时候,我需要显式地植入代码,希望避免它或将其尽可能地推出。 类型类型= Type.GetType(“ Ran ..
发布时间:2020-06-04 18:55:14 C#/.NET