InvalidCastException для типа generi c - PullRequest
0 голосов
/ 26 марта 2020

Пожалуйста, помогите мне понять, почему этот код вызывает InvalidCastException

class A {}

class Model<T> : A
{
    public TModel Copy<TModel> where TModel : Model<T>
    {
        var copy = new Model<T>();
        ...
        return (TModel) copy; //this line throws InvalidCastException
    }
}

class TestModel : Model<A> { }

...

//I cannot do this:
var model = new TestModel();
var copy = model.Copy<TestModel>();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...