代码之家  ›  专栏  ›  技术社区  ›  Peter Eysermans

(Fluent)NHibernate安全异常-ReflectionPermission

  •  2
  • Peter Eysermans  · 技术社区  · 15 年前

    Security Exception
    Description: The application attempted to perform an operation not allowed by the security policy.  To grant this application the required permission please contact your system administrator or change the application's trust level in the configuration file.
    
    Exception Details: System.Security.SecurityException: Request for the permission of type 'System.Security.Permissions.ReflectionPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
    
    Source Error:
    
    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
    
    Stack Trace:
    
    [SecurityException: Request for the permission of type 'System.Security.Permissions.ReflectionPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.]
       System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet) +0
       System.Security.CodeAccessPermission.Demand() +54
       System.Reflection.Emit.DynamicMethod.PerformSecurityCheck(Type owner, StackCrawlMark& stackMark, Boolean skipVisibility) +269
       System.Reflection.Emit.DynamicMethod..ctor(String name, Type returnType, Type[] parameterTypes, Type owner, Boolean skipVisibility) +81
       NHibernate.Bytecode.Lightweight.ReflectionOptimizer.CreateDynamicMethod(Type returnType, Type[] argumentTypes) +165
       NHibernate.Bytecode.Lightweight.ReflectionOptimizer.GenerateGetPropertyValuesMethod(IGetter[] getters) +383
       NHibernate.Bytecode.Lightweight.ReflectionOptimizer..ctor(Type mappedType, IGetter[] getters, ISetter[] setters) +108
       NHibernate.Bytecode.Lightweight.BytecodeProviderImpl.GetReflectionOptimizer(Type mappedClass, IGetter[] getters, ISetter[] setters) +52
       NHibernate.Tuple.Component.PocoComponentTuplizer..ctor(Component component) +231
       NHibernate.Tuple.Component.ComponentEntityModeToTuplizerMapping..ctor(Component component) +420
       NHibernate.Tuple.Component.ComponentMetamodel..ctor(Component component) +402
       NHibernate.Mapping.Component.BuildType() +38
       NHibernate.Mapping.Component.get_Type() +32
       NHibernate.Mapping.SimpleValue.IsValid(IMapping mapping) +39
       NHibernate.Mapping.RootClass.Validate(IMapping mapping) +61
       NHibernate.Cfg.Configuration.ValidateEntities() +220
       NHibernate.Cfg.Configuration.Validate() +16
       NHibernate.Cfg.Configuration.BuildSessionFactory() +39
       FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() in d:\Builds\FluentNH\src\FluentNHibernate\Cfg\FluentConfiguration.cs:93
    

    1 回复  |  直到 15 年前
        1
  •  8
  •   Nick Craver    15 年前

    当你第一次下载一个新的DLL你可以有这个问题,它可能不是你的问题(任何使它不可信的原因是相同的错误),但它造成了确切的错误,我不止一次。下面是如何让它像应用程序的其他部分一样以完全信任的方式运行:

    • 右键单击新的nHibernate dll(可能必须一次执行1个,不确定)
    • 属性
    • 在最底层
    • 点击 解除阻止 除此之外