public void Invoke(WidgetContext context)
{
var method = WidgetMethodSelector.FindSyncMethod(context, context.WidgetDescriptor.Type.GetTypeInfo());
if (method == null)
{
throw new InvalidOperationException("Cannot find an appropriate method.");
}
var result = InvokeSyncCore(method, context);
result.Execute(context);
}