本文整理汇总了C#中Mono.Debugging.Evaluation.EvaluationContext.AssertTargetInvokeAllowed方法的典型用法代码示例。如果您正苦于以下问题:C# EvaluationContext.AssertTargetInvokeAllowed方法的具体用法?C# EvaluationContext.AssertTargetInvokeAllowed怎么用?C# EvaluationContext.AssertTargetInvokeAllowed使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mono.Debugging.Evaluation.EvaluationContext
的用法示例。
在下文中一共展示了EvaluationContext.AssertTargetInvokeAllowed方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SetValue
public override void SetValue (EvaluationContext ctx, object value)
{
ctx.AssertTargetInvokeAllowed ();
var args = new Value [indexerArgs != null ? indexerArgs.Length + 1 : 1];
if (indexerArgs != null)
indexerArgs.CopyTo (args, 0);
args [args.Length - 1] = (Value) value;
var setter = property.GetSetMethod (true);
if (setter == null)
throw new EvaluatorException ("Property is read-only");
this.value = null;
haveValue = false;
((SoftEvaluationContext) ctx).RuntimeInvoke (setter, obj ?? declaringType, args);
this.value = value;
haveValue = true;
}
示例2: RuntimeInvoke
public override object RuntimeInvoke (EvaluationContext gctx, object targetType, object target, string methodName, object[] argTypes, object[] argValues)
{
gctx.AssertTargetInvokeAllowed ();
MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
TargetObject[] lst = new TargetObject [argValues.Length];
Array.Copy (argValues, lst, argValues.Length);
if (target != null)
return CallMethod (ctx, methodName, (TargetObject) target, lst);
else
return CallStaticMethod (ctx, methodName, (TargetType) targetType, lst);
}