Какое семейство шрифтов по умолчанию в Android?

Они не одни и те же. Это то же самое, что и с List и List: они также не могут быть переданы друг другу. То, что AbstractContactEntity является AbstractEntity, не меняет этого. Извлечение интерфейса из EntityCollectionProxy и его covariant тоже не работает, потому что вы хотите реализовать IList, что означает, что у вас есть параметры ввода и возвращаемые значения типа T, которые предотвращают ковариацию.

Единственным возможным решением является следующее:

var tmp = (EntityCollectionProxy)obj;
var col = tmp.Select(x => (AbstractEntity)x);

col будет иметь тип IEnumerable. Если вы хотите иметь EntityCollectionProxy, вам нужно создать новый:

var result = new EntityCollectionProxy(col);

Это предполагает, что ваш класс EntityCollectionProxy имеет конструктор, который принимает IEnumerable. Но будьте осторожны, это будет новый экземпляр, а не тот, который возвращен resolver.DynamikInvoke.

40
задан Community 23 May 2017 в 12:25
поделиться