This is actually a different angel on this question
Task with result unknown type
Consider this code
public interface IQueryHandler<in TQuery, TResult> where TQuery : Query<TResult>
{
Task<TResult> Handle(TQuery query);
}
Above interface is invoked like where Task<T>
will be exposed as Task
public Task Invoke(Query query)
{
var queryHandlerType = typeof(IQueryHandler<,>);
var queryType = query.GetType();
var queryResultType = queryType.BaseType.GetGenericArguments().First();
var handler = _container.GetInstance(queryHandlerType.MakeGenericType(queryType, queryResultType)) as dynamic;
return handler.Handle(query as dynamic);
}
WebApi controller
public Task Get([FromUri] Contract contract)
{
return _invoker.Invoke(CreateDto<Query>(contract));
}
This will break WebAPI and it will for some reason response redirect me to base url of site