0

我有一个使用 VS2012 创建的默认 ASP.NET 网站模板项目。我正在尝试将其发布到仅允许中等信任的 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
4

1 回答 1

0

从堆栈跟踪我推断您在您的网站中使用 DynamicData,并且您说您在 Visual Studio 中使用网站模板。

有几个问题,但你可以尝试一些事情:

1:不要使用Web Site模板,而是使用Web Application模板

或者

2:部署前预编译网站

或者

3:将 edmx 文件从 App_Code 目录移动到一个单独的库中,编译它并将生成的 .dll 添加到网站的 bin 文件夹中。

在这里这里您可以找到有关此问题的更多信息。

于 2013-08-11T09:37:00.280 回答