这段代码取自NopCommerce 3.80 的 权限列表初始化代码

dynamic provider = Activator.CreateInstance(providerType);

 

文件位置 Presentation\Nop.Web\Controllers\InstallController.cs

 

 

//register default permissions

//var permissionProviders = EngineContext.Current.Resolve<ITypeFinder>().FindClassesOfType<IPermissionProvider>();

var permissionProviders = new
List<Type>();

permissionProviders.Add(typeof(StandardPermissionProvider));

foreach (var providerType in permissionProviders)

{

dynamic provider = Activator.CreateInstance(providerType);

EngineContext.Current.Resolve<IPermissionService>().InstallPermissions(provider);

}

方法定义

//

// 摘要:

// 使用指定类型的默认构造函数来创建该类型的实例。

//

// 参数:

// type:

// 要创建的对象的类型。

//

// 返回结果:

// 对新创建对象的引用。

//

public
static
object CreateInstance(Type type);

笔记 Activator.CreateInstance(Type)的更多相关文章

  1. Activator.CreateInstance 方法 (Type) 的用法

    转自:http://www.cnblogs.com/lmfeng/archive/2012/01/30/2331666.html Activator.CreateInstance 方法 (Type) ...

  2. Type.GetType反射的对象创建Activator.CreateInstance

    /// <summary> /// 获取对应类的实现 /// </summary> /// <param name="libname">< ...

  3. C# Activator.CreateInstance()方法使用

    C#在类工厂中动态创建类的实例,所使用的方法为: 1. Activator.CreateInstance (Type) 2. Activator.CreateInstance (Type, Objec ...

  4. 注意Activator.CreateInstance两个重载方法的性能

    今天扩展一个Type的扩展方法New: public static object New(this Type type, params object[] args) { Guard.ArgumentN ...

  5. C# Activator.CreateInstance()

    C#在类工厂中动态创建类的实例,所使用的方法为: 1. Activator.CreateInstance (Type) 2. Activator.CreateInstance (Type, Objec ...

  6. (转) C# Activator.CreateInstance()方法使用

    C#在类工厂中动态创建类的实例,所使用的方法为: 1. Activator.CreateInstance (Type) 2. Activator.CreateInstance (Type, Objec ...

  7. C#中Activator.CreateInstance()方法用法分析

    本文实例讲述了C#中Activator.CreateInstance()方法用法. Activator 类 包含特定的方法,用以在本地或从远程创建对象类型,或获取对现有远程对象的引用. C#在类工厂中 ...

  8. cSharp:use Activator.CreateInstance with an Interface?

    ///<summary> ///数据访问工厂 ///生成時間2015-2-13 10:54:34 ///塗聚文(Geovin Du) /// (利用工厂模式+反射机制+缓存机制,实现动态创 ...

  9. Assembly.CreateInstance和Activator.CreateInstance

    本来是在设计模式中的工厂方法,在实现抽象工厂时,用到了一直都不熟悉的反射. namespace Factory { public abstract class Factory { public abs ...

随机推荐

  1. C#----接口的显式实现

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 接口 { ...

  2. .net 前端传值和后端接收的几种方式

    第一种:GET传参(常用): get传参方式就是链接?后写上参数和数据用&拼接. 第二种:POST传参(常用): 这种传参方式可以GET POST同时传,在链接上加参数后台用get方式接收,P ...

  3. webpack4下import()模块按需加载,打包按需切割模块,减少包体积,加快首页请求速度

    一:背景 因为项目功能越加越多,打包后的体积越来越大,导致首页展示的时候速度比较慢,因为要等压缩的js的包加载完毕. 首页展示的时候只需要对应的js,并不需要全部的js模块,所以这里就可以用按需加载, ...

  4. 聚类算法(二)--BIRCH

    BIRCH (balanced iterative reducing and clustering using hierarchies)(名字太长不用管了) 无监督,适合大样本的聚类方法.大多数情况只 ...

  5. Windows 命令行方式打印和设置变量

    echo %PATH% http://blog.csdn.net/snlei/article/details/7211770

  6. PAT甲级——1094 The Largest Generation (树的遍历)

    本文同步发布在CSDN:https://blog.csdn.net/weixin_44385565/article/details/93311728 1094 The Largest Generati ...

  7. [题解](排列/逆序对)luogu_P1338末日的传说

    首先我们要考虑怎么排能使逆序对数最多:显然是下降序列时,会产生n*(n-1)/2数量的逆序对 那么我们肯定是要尽量把序列的尾端安排成下降序列,前面的尽量不动,中间可能有一段排列自适应到m的逆序对数 然 ...

  8. 兼容IE的login表单巧妙写法

    利用label来写: HTML: <div class="loginwrap"> <label for="phonenumber" class ...

  9. rest get post 请求工具_restclient.jar

    下载 :restclient.jar 启动命令 : java -jar restclient.jar 界面如图所示:

  10. 【SQL Server 优化性能的几个方面】(转)

    转自:http://blog.csdn.net/feixianxxx/article/details/5524819     SQL Server 优化性能的几个方面 (一).数据库的设计 可以参看最 ...