// ======================================================================== // Copyright 2006 - Volian Enterprises, Inc. All rights reserved. // Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE // ------------------------------------------------------------------------ // $Workfile: $ $Revision: $ // $Author: $ $Date: $ // // $History: $ // ======================================================================== using System; using System.Data; using System.Data.SqlClient; using Csla; using Csla.Data; using System.Configuration; using System.IO; namespace Volian.CSLA.Library { /// /// DocVersionInfoList Generated by MyGeneration using the CSLA Object Mapping template /// [Serializable()] public partial class DocVersionInfoList : ReadOnlyListBase { #region Factory Methods /// /// Return a list of all projects. /// public static DocVersionInfoList Get() { return DataPortal.Fetch(new Criteria()); } // TODO: Add alternative gets - //public static DocVersionInfoList Get() //{ // return DataPortal.Fetch(new FilteredCriteria()); //} public static DocVersionInfoList GetByFolder(int folderID) { return DataPortal.Fetch(new FolderCriteria(folderID)); } private DocVersionInfoList() { /* require use of factory methods */ } #endregion #region Data Access Portal [Serializable()] private class Criteria { /* no criteria - retrieve all rows */ } private void DataPortal_Fetch(Criteria criteria) { this.RaiseListChangedEvents = false; try { using (SqlConnection cn = Database.VEPROMS_SqlConnection) { using (SqlCommand cm = cn.CreateCommand()) { cm.CommandType = CommandType.StoredProcedure; cm.CommandText = "getDocVersions"; using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader())) { IsReadOnly = false; while (dr.Read()) this.Add(new DocVersionInfo(dr)); IsReadOnly = true; } } } } catch (Exception ex) { Database.LogException("DocVersionInfoList.DataPortal_Fetch", ex); throw new DbCslaException("DocVersionInfoList.DataPortal_Fetch", ex); } this.RaiseListChangedEvents = true; } [Serializable()] private class FolderCriteria { public FolderCriteria(int folderID) { _FolderID = folderID; } private int _FolderID; public int FolderID { get { return _FolderID; } set { _FolderID = value; } } } private void DataPortal_Fetch(FolderCriteria criteria) { this.RaiseListChangedEvents = false; try { using (SqlConnection cn = Database.VEPROMS_SqlConnection) { using (SqlCommand cm = cn.CreateCommand()) { cm.CommandType = CommandType.StoredProcedure; cm.CommandText = "getDocVersionsByFolder"; cm.Parameters.AddWithValue("@FolderID", criteria.FolderID); using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader())) { IsReadOnly = false; while (dr.Read()) this.Add(new DocVersionInfo(dr)); IsReadOnly = true; } } } } catch (Exception ex) { Database.LogException("DocVersionInfoList.DataPortal_Fetch", ex); throw new DbCslaException("DocVersionInfoList.DataPortal_Fetch", ex); } this.RaiseListChangedEvents = true; } #endregion } // Class } // Namespace