/////////////////////////////////////////////////////////// // UserSecurityGroupIDFetcher.cs // Implementation of Class UserSecurityGroupIDFetcher // CSLA type: Read-only object // Created on: 1-Jan-2009 // Object design: John // Coded: 1-Jan-2009 /////////////////////////////////////////////////////////// using System; using System.Data; using CSLA.Data; using GZTW.Data; using CSLA; using System.Threading; using CSLA.Security; using System.ComponentModel; namespace GZTW.AyaNova.BLL { //case 36 /// ///Quickly fetch users securitygroupid /// [Serializable, EditorBrowsable(EditorBrowsableState.Never)] internal class UserSecurityGroupIDFetcher : ReadOnlyBase { #region Attributes private Guid mSecurityGroupID; #endregion #region Constructor /// /// Private constructor to prevent direct instantiation /// private UserSecurityGroupIDFetcher() { } #endregion #region Static methods internal static Guid UserSecurityGroup(Guid UserID) { return ((UserSecurityGroupIDFetcher)DataPortal.Fetch(new Criteria(UserID))).mSecurityGroupID; } #endregion #region DAL DATA ACCESS /// /// protected override void DataPortal_Fetch(object Criteria) { Criteria crit = (Criteria)Criteria; this.mSecurityGroupID=DBUtil.ToGuid(DBUtil.GetScalarFromSQLString( "SELECT AMEMBEROFGROUP FROM aUser WHERE " + "(aID = @ID)", crit.UserID )); } #endregion #region criteria /// /// Criteria for identifying existing object /// [Serializable] private class Criteria { public Guid UserID; public Criteria(Guid _UserID) { UserID = _UserID; } } #endregion }//end class }//end namespace GZTW.AyaNova.BLL