-1
我有以下的类定义的工作原理:定义类泛型类型
public class AsyncValidationRequestHandler<TRequest, TResponse> : IAsyncRequestHandler<TRequest, TResponse>
where TRequest : IAsyncRequest<TResponse> { }
但我需要定义τ响应的信封,其中信封是:
public class Envelope<T> { }
我试过如下:
public class AsyncValidationRequestHandler<TRequest, TResponse> : IAsyncRequestHandler<TRequest, TResponse>
where TRequest : IAsyncRequest<TResponse>
where TResponse : Envelope<TModel> { }
基本上,我定义一个包络为:
ModalA modelA = new ModelA();
Envelope<ModelA> envelopeA = new Envelope<ModelA>();
或
ModalB modelB = new ModelB();
Envelope<ModelB> envelopeB = new Envelope<ModelB>();
而且我知道我的回答是永远的东西信封...
但我的代码不能编译。我得到错误:
The type or namespace name 'TModel' could not be found (are you missing a using directive or an assembly reference?)
如何解决这个问题?我需要一个界面吗?
是什么''TModel''这里? –
你实际上是否在'EnvelopeTModel>中缺少左尖括号?就像在你的代码片段中显示的那样?究竟是什么导致它不能编译的消息? – Zack
@EhsanSajjad TModel是一个通用类型 –