Приведение C # с универсальными шаблонами, которые используют интерфейсы

У меня есть несколько общих интерфейсов и классов, которые реализуют эти интерфейсы следующим образом:

    interface A<M, N>
        where M : X<N>
        where N : Y
    {
    }
    class B<M, N> : A<M, N>
        where M : X<N>
        where N : Y
    {

    }

    interface X<M> where M : Y
    {

    }
    interface Y
    {

    }
    class X1<M> : X<M> where M : Y
    {

    }
    class Y1 : Y
    {

    }

Я знаю, что это кажется очень запутанным способом делать что-то, но мне он нужен для моего приложения. У меня вопрос, почему я не могу этого сделать:

A , Y> variable = new B , Y1> ();

5
задан Twinhelix 9 May 2011 в 09:58
поделиться