本文整理汇总了C#中ITypeFactory.CreateInstance方法的典型用法代码示例。如果您正苦于以下问题:C# ITypeFactory.CreateInstance方法的具体用法?C# ITypeFactory.CreateInstance怎么用?C# ITypeFactory.CreateInstance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ITypeFactory
的用法示例。
在下文中一共展示了ITypeFactory.CreateInstance方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ActionManager
public ActionManager(ITypeFactory typeFactory)
{
Argument.IsNotNull(() => typeFactory);
var types = (from type in TypeCache.GetTypes()
where AttributeHelper.IsDecoratedWithAttribute<ActionAttribute>(type)
select type);
foreach (var type in types)
{
var actionAttribute = (ActionAttribute)type.GetCustomAttributeEx(typeof (ActionAttribute), false);
var key = actionAttribute.Name.ToLower();
var action = (IAction)typeFactory.CreateInstance(type);
action.Name = actionAttribute.Name;
action.Description = actionAttribute.Description;
action.ArgumentsUsage = actionAttribute.ArgumentsUsage;
_actions[key] = action;
}
}
示例2: RegisterServiceExecutor
public void RegisterServiceExecutor(Type requestType, Type serviceType, ITypeFactory serviceFactoryFn)
{
ResetServiceExecCachesIfNeeded(serviceType, requestType);
var serviceExecDef = typeof(ServiceRequestExec<,>).MakeGenericType(serviceType, requestType);
var iserviceExec = (IServiceExec)serviceExecDef.CreateInstance();
ServiceExecFn handlerFn = (requestContext, dto) =>
{
var service = serviceFactoryFn.CreateInstance(serviceType);
ServiceExecFn serviceExec = (reqCtx, req) =>
iserviceExec.Execute(reqCtx, service, req);
return ManagedServiceExec(serviceExec, (IService)service, requestContext, dto);
};
AddToRequestExecMap(requestType, serviceType, handlerFn);
}