|
using System;
using System.Data;
namespace SubSonic
{
[Serializable]
public class ReadOnlyList<ItemType, ListType> : AbstractList<ItemType, ListType>
where ItemType : ReadOnlyRecord<ItemType>, new()
where ListType : AbstractList<ItemType, ListType>, new()
{
public ReadOnlyList(){}
/// <summary>
/// Creates and loads the collection, leaving the IDataReader open.
/// </summary>
/// <param name="rdr"></param>
public ReadOnlyList(IDataReader rdr)
{
Load(rdr);
}
/// <summary>
/// Creates and loads the collection, with option to set IDataReader close behavior.
/// </summary>
/// <param name="rdr"></param>
/// <param name="closeReader"></param>
public ReadOnlyList(IDataReader rdr, bool closeReader)
{
Load(rdr);
if (closeReader)
{
rdr.Close();
}
}
public ReadOnlyList<ItemType, ListType> Clone()
{
ReadOnlyList<ItemType, ListType> coll = new ReadOnlyList<ItemType, ListType>();
foreach(ItemType item in this)
{
ItemType newItem = item.Clone();
coll.Add(newItem);
}
return coll;
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.