⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readonlycollection.cs

📁 C# 版本的一个三层商业架构
💻 CS
字号:
using System;
using System.Data;

namespace CSLA.Templates
{
  [Serializable()]
  public class ReadOnlyCollection : CSLA.ReadOnlyCollectionBase
  {
    #region Business Properties and Methods

    public ReadOnlyObject this [int index]
    {
      get
      {
        return (ReadOnlyObject)List[index];
      }
    }

    #endregion

    #region Contains

    public bool Contains(ReadOnlyObject item) 
    {
      foreach(ReadOnlyObject child in List)
        if(child.Equals(item))
          return true;

      return false;

    }

    #endregion

    #region Static Methods

    public static ReadOnlyCollection GetCollection() 
    {
      return (ReadOnlyCollection)DataPortal.Fetch(new Criteria());
    }

    #endregion

    #region Constructors

    private ReadOnlyCollection()
    {
      // Prevent direct creation
    }

    #endregion

    #region Criteria

    [Serializable()]
      public class Criteria
    {}

    #endregion

    #region Data Access

    protected override void DataPortal_Fetch(object criteria)
    {
      locked = false;

      Criteria crit = (Criteria)criteria;

      // Retrieve all child data into a data reader
      // then loop through and create each child object
      IDataReader dr;
      while(dr.Read())
        List.Add(ReadOnlyObject.GetReadOnlyObject(dr));

      locked = true;
    }

    #endregion

  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -