2013-04-02 3 views
1

Я разрабатываю приложение silverlight, которое использует CSLA для бизнес-объектов.Csla DataPortal не находит реализованные методы (Silverlight)

Я пытаюсь правильно настроить DataPortal так, чтобы он правильно вызывал методы DataPortal, которые содержатся в моей библиотеке классов .Net.

У меня есть мои проекты Model и Model.Silverlight, поэтому классы в проекте silverlight создаются как ссылки, а мои методы DataPortal - внутри директив компилятора #if! SILVERLIGHT. Пользовательский интерфейс silverlight ссылается на проект Model.Silverlight и использует методы Get, которые затем вызывают DataPortal.FetchAsync.

Изображение моего макета проекта здесь http://i.imgur.com/V3pQppa.jpg

Моя проблема заключается в том, что FetchAsync возвращается с ошибкой не DataPortal_Fetch реализован, хотя метод с правильной подписью существует внутри SilverLight блока #if!.

Это заставляет меня думать, что портал данных не настроен должным образом. У меня создан веб-сервис, и я могу перейти к нему, щелкнув правой кнопкой мыши> Просмотреть в браузере. Веб-служба также правильно настроена для Csla.DataPortalClient.WcfProxy.DefaultUrl в App_Startup. Поэтому я честно не знаю, что еще попробовать.

Надеюсь, кто-то может помочь, поскольку проблема преследует меня в течение нескольких дней, и я не могу зарегистрироваться на форумах CSLA, чтобы публиковать их там. Заранее спасибо!

ответ

0

Похоже, мой вопрос я пропускал эту линию в App_Startup

Csla.DataPortal.ProxyTypeName = typeof(Csla.DataPortalClient.WcfProxy).AssemblyQualifiedName;

Который, кажется, стали необходимы в CSLA 4,5

Теперь портал данных является поиск правильно реализованные методы

+0

Да, на портале данных есть существенные изменения, начиная с версии 4.5. http://www.lhotka.net/weblog/CSLADataPortalChangesInVersion45.aspx –