У меня есть эти два интерфейсаРеализация общий интерфейс, который принимает общий интерфейс в качестве параметра
/// <summary>
/// Represents an interface that knows how one type can be transformed into another type.
/// </summary>
/// <typeparam name="TInput"></typeparam>
/// <typeparam name="TOutput"></typeparam>
public interface ITransformer<in TInput,out TOutput>
{
TOutput Transform(TInput input);
}
public interface ITransform
{
TOutput Transform<TInput,TOutput>(ITransformer<TInput, TOutput> transformer);
}
У меня есть класс, в котором в хотите реализовать ITranform как это.
public class MessageLogs :ITransform
{
// But I am am not able to implement the ITransform interface like this
// MessageLogs is getting binded in the param but not getting binded to
// TInput in the Transform<TIn,TOut>
//
public T Transform<MessageLogs, T>(ITransformer<MessageLogs, T> transformer)
{
return transformer.Transform(this);
}
}
Как правильно сделать это без потери родовых из двух интерфейсов? У меня много траннеровров.
Жаль, что я не смог это сделать. ITransform не реализован – Sameer
Спасибо !!! работает сейчас. – Sameer