Associative Table Auditing

Mar 30, 2011 at 4:28 PM

I updated to the latest version of nHydrate and now I am getting errors in the Audit.generate.cs files of all associative table.  

The 2 errors are in the AuditResultFieldCompare Region.

Error 2 Inconsistent accessibility: property type 'USAF_A1_PERSONNEL.SLCMS_DAL.Business.Objects.WorkflowStepRoles.FieldNameConstants' is less accessible than property 'USAF_A1_PERSONNEL.SLCMS_DAL.Business.Audit.IWorkflowStepRolesAuditResultFieldCompare.Field' C:\Users\john.miller\Documents\Visual Studio 2010\Team_Projects\USAF-SLCMS\AF-SLCMS.DAL\USAF_A1_PERSONNEL.SLCMS_DAL\Business\Audit\WorkflowStepRolesAudit.Generated.cs 280 89 USAF_A1_PERSONNEL.SLCMS_DAL

Error 14 Inconsistent accessibility: base class 'Widgetsphere.Core.DataAccess.AuditResultFieldCompare<T,USAF_A1_PERSONNEL.SLCMS_DAL.Business.Objects.WorkflowStepRoles.FieldNameConstants>' is less accessible than class 'USAF_A1_PERSONNEL.SLCMS_DAL.Business.Audit.WorkflowStepRolesAuditResultFieldCompare<T>' C:\Users\john.miller\Documents\Visual Studio 2010\Team_Projects\USAF-SLCMS\AF-SLCMS.DAL\USAF_A1_PERSONNEL.SLCMS_DAL\Business\Audit\WorkflowStepRolesAudit.Generated.cs 287 15 USAF_A1_PERSONNEL.SLCMS_DAL

#region AuditResultFieldCompare
/// <summary> ///  /// </summary>

public interface IWorkflowStepRolesAuditResultFieldCompare : IAuditResultFieldCompare {

/// <summary> ///  /// </summary>

new USAF_A1_PERSONNEL.SLCMS_DAL.Business.Objects.WorkflowStepRoles.FieldNameConstants Field { get; }

/// <summary> /// A comparison class for audit comparison results /// </summary> /// <typeparam name="T"></typeparam>

public class WorkflowStepRolesAuditResultFieldCompare<T> : Widgetsphere.Core.DataAccess.AuditResultFieldCompare<T, USAF_A1_PERSONNEL.SLCMS_DAL.Business.Objects.WorkflowStepRoles.FieldNameConstants>, IWorkflowStepRolesAuditResultFieldCompare { internal WorkflowStepRolesAuditResultFieldCompare(T value1, T value2, USAF_A1_PERSONNEL.SLCMS_DAL.Business.Objects.WorkflowStepRoles.FieldNameConstants field, System.Type dataType) : base(value1, value2, field, dataType) { }


Mar 31, 2011 at 12:49 PM

Associative tables should not have table auditing enabled. This should have been a validation rule. It will be in the next version and the model will not verify. You can fix this right now by setting the property to false and removing the offending audit classes. The reason is that the intermediary table should not really exist and is not visible in the object model; however it must exist because of the limitation of SQL. These objects are now internal and so there can be no audit functionality that queries internal objects.

Mar 31, 2011 at 1:49 PM

Thank you.