本文整理汇总了C#中System.Reflection.MethodBase.IsExtension方法的典型用法代码示例。如果您正苦于以下问题:C# MethodBase.IsExtension方法的具体用法?C# MethodBase.IsExtension怎么用?C# MethodBase.IsExtension使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Reflection.MethodBase
的用法示例。
在下文中一共展示了MethodBase.IsExtension方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ReflectedProviderFactoryDefinitionBase
protected ReflectedProviderFactoryDefinitionBase(MethodBase method,
QualifiedName qname,
Type outputType)
{
this.qname = qname;
this.outputType = outputType;
this.method = method;
this.parameters = new PropertyDefinitionCollection();
parameters.AddRange(this, qname.NamespaceName, method.GetParameters(), method.IsExtension());
}
示例2: CommonReflectionInfo
public CommonReflectionInfo(OperatorDefinition def, RoleAttribute attr, MethodBase method)
{
this.method = method;
this.def = def;
this.name = attr.ComputeName(method);
var type = method.DeclaringType;
if (type.IsGenericType && !type.IsGenericTypeDefinition)
type = type.GetGenericTypeDefinition();
this.ns = TypeHelper.GetNamespaceName(type);
parameters = new PropertyDefinitionCollection();
parameters.AddRange(def, ns, method.GetParameters(), method.IsExtension());
}
示例3: MapParameters
internal static object[] MapParameters(MethodBase ctor, object parent, IReadOnlyDictionary<string, object> parameters)
{
ParameterInfo[] parms = ctor.GetParameters();
int index = 0;
object[] args = new object[parms.Length];
if (ctor.IsExtension()) {
args[0] = parent;
index = 1;
}
for (; index < parms.Length; index++) {
ParameterInfo p = parms[index];
args[index] = parameters[p.Name];
}
return args;
}