1.1 Когда я запускаю новый проект и добавляю модель данных объекта ADO.NET, он автоматически добавляет следующие сборки:
System.Data.Entity
System.Runtime.Serialization
System.Security
Поэтому я бы удалил их из Проекта и добавил их снова, чтобы убедиться, что используется самая высокая версия.
1.2 На вашем компьютере может быть только одна версия Ria. Таким образом, ваш проект автоматически использует последнюю установленную версию.
1.3 Перейдите на страницу свойств вашего проекта Silverlight и откройте вкладку «Silverlight». Измените версию на Silverlight 5 в Target Silverlight Version: Важное примечание. Если у вас большой проект, его выполнение займет ОЧЕНЬ ОЧЕНЬ долго. Сделай себе кофе и подожди. Пользовательский интерфейс может перестать отвечать при его изменении, однако не трогайте его. Даже когда вы теряете терпение. Если вы прервете, возможно, в вашем файле .csproject останутся ошибки.
Первый пункт 3. Установите инструменты Silverlight 5 также на свой сервер вместе с Entity FrameWork 4.1, поэтому не будет иметь значения, если вы забудете установить Copy Local
в True
для новой сборки Silverlight. (Это означает, что вам не придется повторно публиковать, если вы забыли.)
Пункт 2. Убедитесь, что ваш проект работает с новыми установленными версиями, проверив / выполнив следующие действия:
- Удалите папки bin и obj в обоих проектах.
- Удалите скрытую папку GenerateCode
в своем проекте Silverlight.
- Убедитесь, что ваши собственные сборки также нацелены на Silverlight 5.
- После ReBuilding, когда я делаю все это, я бы сделал что-то странное, но оказалось, что оно решает глупые ошибки: На странице свойств вашего проекта Silverlight отключите WCF Ria Services link
, установив для него значение <No Project Set>
Создайте свой проект (в результате чего много ошибок, я знаю) переключи ссылку обратно и пересобери. Помните, что Ria поддерживает сериализацию сложных объектов начиная с SP1, которую они хотели видеть в первой версии, но не смогли закончить ее вовремя. Это может вызвать головную боль, если вы включили сборки в клиент Silverlight, который включает типы объектов, также существующие на стороне сервера.
Удачи, и если у вас возникнут проблемы, просто спросите.