using Apewer; using System; using System.Collections.Generic; using System.Data; namespace Apewer.Source { /// <summary>查询数据表。</summary> public interface IQuery : IDisposable { #region 结果集的属性。 /// <summary>语句执行成功。</summary> bool Success { get; } /// <summary>错误信息。</summary> string Error { get; } /// <summary>消息。</summary> string Message { get; } /// <summary>语句执行失败时的 Exception 对象。</summary> Exception Exception { get; } /// <summary>所有结果表。</summary> List<DataTable> Tables { get; } /// <summary>获取默认结果表。如果设置默认结果表,会丢失设置前的所有结果表。</summary> DataTable Table { get; } /// <summary>结果集为空。</summary> bool Empty { get; } /// <summary>默认表中的数据总行数。</summary> int Rows { get; } /// <summary>默认表中的数据总列数。</summary> int Columns { get; } #endregion #region 以对象获取结果集中的内容。 /// <summary>获取默认表中第 0 行、第 0 列的单元格内容。</summary> object Value(); /// <summary>获取默认表中指定行中第 0 列的内容。</summary> /// <param name="rowIndex">行索引,从 0 开始。</param> object Value(int rowIndex); /// <summary>获取默认表中第 0 行指定列的内容。</summary> /// <param name="columnName">列名称。</param> object Value(string columnName); /// <summary>获取默认表中指定单元的内容。</summary> /// <param name="rowIndex">行索引,从 0 开始。</param> /// <param name="columnIndex">列索引,从 0 开始。</param> object Value(int rowIndex, int columnIndex); /// <summary>获取默认表中指定单元的内容。</summary> /// <param name="rowIndex">行索引,从 0 开始。</param> /// <param name="columnName">列名称。</param> object Value(int rowIndex, string columnName); #endregion #region 以文本获取结果集中的内容。 /// <summary>获取默认表中第 0 行、第 0 列的单元格内容。</summary> string Text(); /// <summary>获取默认表中指定行中第 0 列的内容。</summary> /// <param name="rowIndex">行索引,从 0 开始。</param> string Text(int rowIndex); /// <summary>获取默认表中第 0 行指定列的内容。</summary> /// <param name="columnName">列名称。</param> string Text(string columnName); /// <summary>获取默认表中指定单元格的内容。</summary> /// <param name="rowIndex">行索引,从 0 开始。</param> /// <param name="columnIndex">列索引,从 0 开始。</param> string Text(int rowIndex, int columnIndex); /// <summary>获取默认表中指定单元的内容。</summary> /// <param name="rowIndex">行索引,从 0 开始。</param> /// <param name="columnName">列名称。</param> string Text(int rowIndex, string columnName); #endregion } }