Я ссылаюсь на проект веб-сервиса, он имеет 4 сервиса, которые используют собственный объект модели.
Например: CalculationService - Response.cs DisplayService - Response.cs
public T ReturnResponse
{
return genericResponse;
}
При использовании этого
Inside CalculationService
var result= CalculationService.ReturnResponse(); //I want this to be namespace of
CalculationService.Response class.
Inside DisplayService
var result=DisplayService.ReturnResponse(); //I want this to be namespace of
DisplayService.Response class.
Общий метод, возвращающий обобщенный c класс ответа, который может быть назначен (приведение типа) во время выполнения.
Вот код, который я попробовал:
public T ReturnMyResponse<T> where T:CalculationService.Response,DisplayService.Response,new()
{
var returnClass=new T();
if(typeof(CalculationService.Response)==typeof(T))
{
var className=returnClass as CalculationService.Response;
return (T)className;
}
if(typeof(DisplayService.Response)==typeof(T))
{
var className=returnClass as DisplayService.Response;
return (T)className;}return new T();
}
Я вижу эту ошибку: Тип класса «DisplayService.Response» должен предшествовать любым другим ограничениям.