我有以下代码:
public T Dispatch<T>(IQuery<T> query)
{
Type type = typeof(IQueryHandler<,>);
Type[] typeArgs = { query.GetType(), typeof(T) };
Type handlerType = type.MakeGenericType(typeArgs);
dynamic handler = _provider.Resolve(handlerType);
T result = handler.Handle((dynamic)query);
return result;
}
我得到以下异常:
Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: ''object' does not contain a definition for 'Handle''
我使用.NET Framework 4.6.1,这是我可以在我们组织中使用的最高版本。所以我想C#7不支持我需要的功能。我该怎么做才能使这项工作成功?