2010-07-06 8 views
1

J'utilise le chargement paresseux dans mon application. Quand je travaille sur mon code source et la voir dans mon navigateur il n'y a pas de problème mais quand je publie mon application Web, cette erreur apparaît:Erreur lors du chargement paresseux avec NHibernate

The following types may not be used as proxies: 
Faraconesh.BusinessFramework.Common.OrganizationalMonth: field bkpStartDate should not be public nor internal 
Faraconesh.BusinessFramework.Common.OrganizationalMonth: field bkpEndDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.GroupTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.GroupTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.RoleTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.RoleTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.JobTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.JobTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.ClassSession: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.ClassSession: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.EmployeeWelfareTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.EmployeeWelfareTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.MissionOrderTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.MissionOrderTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderComputaionTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderComputaionTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.InsuranceContractTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.InsuranceContractTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.OfficeAutomation.BusinessEntities.SendingInformation: method IsToChanged should be 'public/protected virtual' or 'protected internal virtual' 
Faraconesh.EnterpriseAppUnits.OfficeAutomation.BusinessEntities.SendingInformation: method IsFromChanged should be 'public/protected virtual' or 'protected internal virtual' 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: NHibernate.InvalidProxyTypeException: The following types may not be used as proxies: 
Faraconesh.BusinessFramework.Common.OrganizationalMonth: field bkpStartDate should not be public nor internal 
Faraconesh.BusinessFramework.Common.OrganizationalMonth: field bkpEndDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.GroupTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.GroupTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.RoleTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.RoleTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.JobTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.JobTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.ClassSession: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.ClassSession: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.EmployeeWelfareTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.EmployeeWelfareTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.MissionOrderTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.MissionOrderTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderComputaionTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderComputaionTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.InsuranceContractTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.InsuranceContractTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.OfficeAutomation.BusinessEntities.SendingInformation: method IsToChanged should be 'public/protected virtual' or 'protected internal virtual' 
Faraconesh.EnterpriseAppUnits.OfficeAutomation.BusinessEntities.SendingInformation: method IsFromChanged should be 'public/protected virtual' or 'protected internal virtual' 

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: 


[InvalidProxyTypeException: The following types may not be used as proxies: 
Faraconesh.BusinessFramework.Common.OrganizationalMonth: field bkpStartDate should not be public nor internal 
Faraconesh.BusinessFramework.Common.OrganizationalMonth: field bkpEndDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.GroupTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.GroupTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.RoleTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.BusinessFramework.PartyService.BusinessEntities.RoleTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.JobTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.JobTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.ClassSession: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Training.BusinessEntities.ClassSession: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.EmployeeWelfareTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.EmployeeWelfareTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.MissionOrderTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.MissionOrderTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderComputaionTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.StaffOrderComputaionTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.InsuranceContractTimeFrame: field bkpStartDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.Staff.BusinessEntities.InsuranceContractTimeFrame: field bkpEndDate should not be public nor internal 
Faraconesh.EnterpriseAppUnits.OfficeAutomation.BusinessEntities.SendingInformation: method IsToChanged should be 'public/protected virtual' or 'protected internal virtual' 
Faraconesh.EnterpriseAppUnits.OfficeAutomation.BusinessEntities.SendingInformation: method IsFromChanged should be 'public/protected virtual' or 'protected internal virtual'] 
    NHibernate.Cfg.Configuration.ValidateEntities() +347 
    NHibernate.Cfg.Configuration.Validate() +13 
    NHibernate.Cfg.Configuration.BuildSessionFactory() +31 
    Faraconesh.ApplicationFramework.Core.DataAccess.NHibernateSessionManager.InitSessionFactory() +804 
    Faraconesh.ApplicationFramework.Core.DataAccess.NHibernateSessionManager..ctor() +39 
    Faraconesh.ApplicationFramework.Core.DataAccess.Nested..cctor() +39 

[TypeInitializationException: The type initializer for 'Nested' threw an exception.] 
    Faraconesh.ApplicationFramework.Core.DataAccess.NHibernateSessionManager.get_Instance() +61 
    System.Web.Administration.WebAdminModule.CommitAndCloseSession(Object sender, EventArgs e) +247 
    System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +68 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75 

Quelle est la raison. Comment puis-je résoudre ce problème? J'utilise NHibernate 2.1.2 et le mappage xml.

Répondre

2

Je pense que vous recherchez le paramètre use_proxy_validator, définissez-le sur false dans votre configuration.

En outre, vous voudrez peut-être regarder this thread

1

Vous devez marquer bkpStartDate et d'autres comme virtual

Questions connexes