Я в замешательстве. У меня есть проект Silverlight, который в настоящее время выполняется и отображает список серверов из моей моделируемой модели (я следую шаблону MVVM).
Интерфейс кодируется следующим образом:
public class GetServersCompletedEventArgs : EventArgs
{
public Exception Error {get; set;}
public IEnumerable<LicenseServer> Results {get; private set;}
public GetServersCompletedEventArgs(Exception error, IEnumerable<LicenseServer> results)
{
this.Error = error;
this.Results = results;
}
}
public delegate void GetServersCompletedEvent(GetServersCompletedEventArgs e);
public interface IDataService
{
void GetServers();
event GetServersCompletedEvent GetServersCompleted;
}
Как видите, CompletedEventArgs возвращает результаты в виде IEnumerable.
Проблема, с которой я сталкиваюсь, заключается в определении <LicenseServer>
таким образом, чтобы я мог заглушить его поддельными данными или заполнить результаты реальными данными (службы данных ala ado.net).
Я создал локальный класс LicenseServer, но служба всегда возвращает другой тип LicenseServer.
Я получаю ошибку:
конвертировать Невозможно привести объект типа
'DataServiceOrderedQuery [LicenseMon.LMonServiceReference.License_Server]
печатать
«System.Data.Services.Client.DataServiceQuery`1 [LicenseMon.Model.LicenseServer]
То, что я прочитал как LicenseServer из справочника службы, не может быть преобразовано в LicenseServer, который я определил в своем классе моделей
Почему у меня проблемы? Разве я не могу самостоятельно разрабатывать свои классы и иметь возможность переключаться между действующей базой данных и моими внутренне сгенерированными данными? Я неправильно подхожу к этому?
Любые примеры кода, пояснения, ссылки и т. Д. Будут наиболее полезны