托管环境中的间歇实体框架3.4错误(中等信任)

时间:2012-10-13 12:35:17

标签: frameworks entity

我有一个在中等信任环境(godaddy)中托管的应用程序。当我尝试使用该应用程序时,我会定期出现奇怪的问题。

Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.

我已经阅读了一些其他帖子,讨论在中等信任环境中运行的问题。我的问题实际上是试图理解为什么它有时有效,有时我得到上述信息。发生错误时,它最终会自行纠正。如果我回收IIS修复也是如此。我希望他们能解决这个问题。

基于callstack,它看起来与建立连接和尝试从我的程序集加载MetadataWorkspace有关。我的MetadataWorkspace包含在我的Web应用程序的App_Code文件夹中。

Partial Callstack:

System.Security.SecurityException: Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
at System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet)
   at System.Security.CodeAccessPermission.Demand()
   at System.Reflection.Assembly.VerifyCodeBaseDiscovery(String codeBase)
   at System.Reflection.Assembly.GetName(Boolean copiedName)
   at System.Reflection.Assembly.GetName()
   at System.Data.Metadata.Edm.DefaultAssemblyResolver.AssemblyComparer`1.Equals(T x, T y)
   at System.Collections.Generic.HashSet`1.AddIfNotPresent(T value)
   at System.Collections.Generic.HashSet`1.Add(T item)
   at System.Data.Metadata.Edm.DefaultAssemblyResolver.GetAllDiscoverableAssemblies()
   at System.Data.Metadata.Edm.DefaultAssemblyResolver.GetWildcardAssemblies()
   at System.Data.Metadata.Edm.MetadataArtifactLoaderCompositeResource.LoadResources(String    assemblyName, String resourceName, ICollection`1 uriRegistry, MetadataArtifactAssemblyResolver   resolver)
   at System.Data.Metadata.Edm.MetadataArtifactLoaderCompositeResource.CreateResourceLoader(String path, ExtensionCheck extensionCheck, String validExtension, ICollection`1 uriRegistry, MetadataArtifactAssemblyResolver resolver)
   at System.Data.Metadata.Edm.MetadataArtifactLoader.Create(String path, ExtensionCheck extensionCheck, String validExtension, ICollection`1 uriRegistry, MetadataArtifactAssemblyResolver resolver)
   at System.Data.EntityClient.EntityConnection.SplitPaths(String paths)
   at System.Data.EntityClient.EntityConnection.GetMetadataWorkspace(Boolean initializeAllCollections)
   at System.Data.Objects.ObjectContext.RetrieveMetadataWorkspaceFromConnection()
   at System.Data.Objects.ObjectContext..ctor(EntityConnection connection, Boolean isConnectionConstructor)
   at System.Data.Objects.ObjectContext..ctor(String connectionString, String defaultContainerName)

我有解决方法吗?

0 个答案:

没有答案
相关问题