Ну
вопрос довольно прост.
У меня есть объект, определенный как:
public class FullListObject : System.Collections.ArrayList, IPagedCollection
И когда я пытаюсь:
IPagedCollection pagedCollection = (IPagedCollection)value;
Это не работает ... значение - это FullListObject ... это мой новый код, пытающийся обойти проблему с помощью оператора "is". Когда система проверяет (value is IPagedCollection)
, она никогда не выполняется для FullListObject.
Как привести объект к другому объекту с типом интерфейса?
EDIT:
Только для записи: код ошибки
if (value is IPagedCollection)
{
IPagedCollection pagedCollection = value as IPagedCollection;
If никогда не задавало значение true, и принудительное преобразование тоже не работало. Таким образом, проблема заключалась в двойном определении классов. Теперь я определил FullObjectList в проекте «Commom» для классов, используемых всей системой. Проблема исчезла!