У меня был проект, который я обновил из
- .NET 3.5 MVC v2 to
- .NET 4.0 MVC v3
Компиляция Я получаю сообщение об ошибке при попытке использовать или установить свойство @ViewBag.Title
.
Невозможно найти один или несколько типов, необходимых для компиляции динамического выражения. Вам не хватает ссылок на файлы Microsoft.CSharp.dll и System.Core.dll?
Я сделал следующее
- После выполнения шагов обновления
- Установите целевую структуру на вкладке "Проект/Свойства/Приложение" в .NET Framwework 4
- Добавлена структура System.Core вручную
- Добавлена структура Microsoft.CSharp
- Добавлена структура System.Xml
- Добавлена структура System.Xml.Linq
- Убедитесь, что мой Web.Config прав (он написан поверх Web.Debug.Config и т.д.)
- Создал модель, контроллер и Razor View
- Создайте __Layout.cshtml _
Я нахожусь в убытке относительно того, что еще делать?
EDIT:
Я заметил, что в GAC Gui есть System.Core 3.5.0.0, но не System.Core 4.0.0.0. Означает ли это, что его путают и все еще используют предыдущую версию? Или я не понимаю GAC?
EDIT:
Мой web.config выглядит следующим образом
...
<compilation debug="true">
<assemblies>
<add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
</assemblies>
</compilation>
....
<pages>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</controls>
<namespaces>
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.WebPages"/>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="System.Linq" />
<add namespace="System.Collections.Generic" />
</namespaces>
</pages>
....