public class P { }
public class B : P { }
public class A : P { }
public interface Interface<T> where T : P { }
public class IA : Interface<A> { }
public class IB : Interface<B> { }
public class Test
{
public void WhatTheFuck()
{
Interface<P> p;
p = new IA();// cast error here
p = new IB();// cast error here
//... somthing about interface<p>
}
}
Get this error :
Severity Code Description Project File Line Suppression State Error CS0266 Cannot implicitly convert type 'AssUploaderSystem.IA' to 'AssUploaderSystem.Interface'
I want to make a generic solution because class A & B is also implemented class P.
So I want to write it only once, but I can't cast to some class . How can I do ?