2013-03-21 2 views
2

Я пытался создать «представления», чтобы повысить производительность моего приложения. Приложение Silverlight 4, связанное с службами RIA для Сервера. Серверное приложение началось с EF 4.1 + RIA Services. Я установил «EF Power Tools Beta 3 v0.7.0.0» и мог без проблем генерировать мои представления. Но вскоре я понял, что EF 4.1. не смог извлечь выгоду из предварительно скомпилированных представлений. EF> = 4.2. Через NuGet я увидел обновление для RIA Services (RIAServices.EntityFramework.4.2.0), которые используются EF 5. инсталлированы и получил все работает, но когда я пытаюсь генерировать взгляды я получаю исключение:PowerTools Beta 3 не работает

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.

Я попытался переустановить PowerTools. Не повезло Я загрузил исходный код для PowerTools и отладил Исключение. По-видимому, PowerTools пытался и не мог найти старую версию EF. Свойство LoaderExceptions чтения:

{System.IO.FileNotFoundException: Could not load file or assembly 'EntityFramework, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies.

Я исследовал PublicKeyToken и подтвердил, что это так же, как EF 5 (EF 4.4 TARGET = .NET 4) длл найти в моей «бен» выходной карты. Но PowerTools ищет EF 4.1 .. почему?

Мой файл web.config имеет это:

<sectionGroup name="system.serviceModel"> 
    <section name="domainServices" type="System.ServiceModel.DomainServices.Hosting.DomainServicesSection, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" allowDefinition="MachineToApplication" requirePermission="false" /> 
</sectionGroup> 
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 

и:

<runtime> 
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <dependentAssembly> 
    <assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral" /> 
    <bindingRedirect oldVersion="0.0.0.0-4.4.0.0" newVersion="4.4.0.0" /> 
    </dependentAssembly> 
</assemblyBinding> 

Я также испытал изменения PublicKeyToken в Web.config только подтвердите, что я получил еще одну ошибку от PowerTools, поэтому PowerTools, похоже, анализирует мой Web.config.

ответ

0

Обновление: Я создал новый веб-проект и добавил все файлы кода модели в качестве ссылок. То же соединение. Теперь я могу строить виды .. странно .. те же ссылки.

Когда я добавляю представления к моему первоначальному проекту, службы RIA не запускаются. Удаленные просмотры, и они снова начали.

Смежные вопросы