Шаблон веб-сайта ASP.NET VS2012 по умолчанию на узле среднего доверия

У меня есть проект шаблона веб-сайта ASP.NET по умолчанию, который я создал с помощью VS2012. Я пытаюсь опубликовать его на 1and1.com, где разрешено только Среднее доверие. Видимо, этот шаблон ожидает полного доверия, но я не могу понять, что мне нужно делать.

Я получаю ошибку...

    [SecurityException: Request for the permission of type 'System.Security.Permissions.TypeDescriptorPermission, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.]
   System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet) +0
   System.Security.CodeAccessSecurityEngine.Check(PermissionSet permSet, StackCrawlMark& stackMark) +31
   System.Security.PermissionSet.Demand() +68
   System.ComponentModel.TypeDescriptor.AddProviderTransparent(TypeDescriptionProvider provider, Type type) +153
   System.Web.DynamicData.MetaModel.CreateSimpleModel(Type entityType) +77
   System.Web.DynamicData.MetaTable.CreateTable(Type entityType) +9
   System.Web.UI.DataControlExtensions.GetTableFromCache(Type entityType) +64
   System.Web.UI.DataControlExtensions.EnableDynamicData(INamingContainer control, Type entityType) +14

1 ответ

Решение

Исходя из стека трассировки, я предполагаю, что вы используете DynamicData на своем веб-сайте, и вы сказали, что используете шаблон веб-сайта в Visual Studio.

Есть несколько проблем с этим, но вы можете попробовать несколько вещей:

1. Не используйте шаблон веб-сайта, но шаблон веб-приложения

или же

2. Предварительная компиляция веб-сайта перед развертыванием

или же

3. Переместите файл edmx из каталога App_Code в отдельную библиотеку, скомпилируйте его и добавьте полученный DLL-файл в папку bin веб-сайтов.

Здесь и здесь вы можете найти больше информации об этой проблеме.

Другие вопросы по тегам