本文整理汇总了C#中System.Data.DataSet.ShouldNotBeNull方法的典型用法代码示例。如果您正苦于以下问题:C# DataSet.ShouldNotBeNull方法的具体用法?C# DataSet.ShouldNotBeNull怎么用?C# DataSet.ShouldNotBeNull使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Data.DataSet
的用法示例。
在下文中一共展示了DataSet.ShouldNotBeNull方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: UpdateDataSet
/// <summary>
/// Update DataSet with commands
/// </summary>
/// <param name="repository">IAdoRepository 인스턴스</param>
/// <param name="dataSet">DataSet to update</param>
/// <param name="tableName">table name to update</param>
/// <param name="insertCommand">command to insert</param>
/// <param name="updateCommand">command to update</param>
/// <param name="deleteCommand">command to delete</param>
/// <param name="updateBehavior">Behavior to update</param>
/// <param name="updateBatchSize">batch size to update</param>
/// <returns>affected row count</returns>
public static int UpdateDataSet(this IAdoRepository repository,
DataSet dataSet,
string tableName,
DbCommand insertCommand = null,
DbCommand updateCommand = null,
DbCommand deleteCommand = null,
UpdateBehavior updateBehavior = UpdateBehavior.Transactional,
int updateBatchSize = Int32.MaxValue) {
dataSet.ShouldNotBeNull("dataSet");
Guard.Assert(dataSet.Tables.Count > 0, "지정된 DataSet에 DataTable이 하나라도 있어야합니다.");
if(tableName.IsWhiteSpace())
tableName = dataSet.Tables[0].TableName;
if(tableName.IsWhiteSpace())
tableName = dataSet.Tables[0].TableName = Guid.NewGuid().ToString();
if(repository.IsActiveTransaction) {
if(IsDebugEnabled)
log.Debug("DataSet에 대해 Transaction 하에서 배치작업을 실행합니다... " +
"dataSet=[{0}], tableName=[{1}], insertCommand=[{2}], updateCommand=[{3}], deleteCommand=[{4}], ActiveTransaction=[{5}], updateBatchSize=[{6}]",
dataSet.DataSetName,
tableName,
insertCommand != null ? insertCommand.CommandText : "NULL",
updateCommand != null ? updateCommand.CommandText : "NULL",
deleteCommand != null ? deleteCommand.CommandText : "NULL",
repository.ActiveTransaction,
updateBatchSize);
return repository.Db.UpdateDataSet(dataSet,
tableName,
insertCommand,
updateCommand,
deleteCommand,
repository.ActiveTransaction,
updateBatchSize);
}
if(IsDebugEnabled)
log.Debug("DataSet에 대해 배치작업을 실행합니다... " +
"dataSet=[{0}], tableName=[{1}], insertCommand=[{2}], updateCommand=[{3}], deleteCommand=[{4}], ActiveTransaction=[{5}], updateBatchSize=[{6}]",
dataSet.DataSetName,
tableName,
insertCommand != null ? insertCommand.CommandText : "NULL",
updateCommand != null ? updateCommand.CommandText : "NULL",
deleteCommand != null ? deleteCommand.CommandText : "NULL",
repository.ActiveTransaction,
updateBatchSize);
return repository.Db.UpdateDataSet(dataSet,
tableName,
insertCommand,
updateCommand,
deleteCommand,
updateBehavior,
updateBatchSize);
}
示例2: Fill
/// <summary>
/// <paramref name="dataReader"/>를 읽어서, <see cref="DataTable"/>을 빌드하여 <paramref name="dataSet"/>에 추가합니다.
/// </summary>
public int Fill(DataSet dataSet, string tableName, IDataReader dataReader, int firstResult = 0, int maxResults = 0) {
dataSet.ShouldNotBeNull("dataSet");
dataReader.ShouldNotBeNull("dataReader");
return _doFillDataSetCommand(dataSet, tableName ?? "Table" + dataSet.Tables.Count + 1, dataReader, firstResult, maxResults);
}
示例3: LoadDataSet
/// <summary>
/// 지정된 DataAdapter를 통해 얻은 정보를 DataSet으로 빌드한다.
/// </summary>
/// <param name="adapter">DataAdapter</param>
/// <param name="tableName">Table name</param>
/// <param name="targetDataSet">저장할 Dataset</param>
/// <param name="firstResult">첫번째 레코드의 인덱스 (0부터 시작)</param>
/// <param name="maxResults">최대 레코드 수 (0 이면 무시하고, 마지막 레코드까지 가져온다</param>
public virtual void LoadDataSet(DbDataAdapter adapter, string tableName, DataSet targetDataSet,
int firstResult = 0, int maxResults = 0) {
adapter.ShouldNotBeNull("adapter");
targetDataSet.ShouldNotBeNull("targetDataSet");
Guard.Assert(adapter.SelectCommand != null, "adapter.SelectCommand is null.");
if(IsDebugEnabled)
log.Debug(
"DataAdatpter를 이용하여 정보를 DataSet에 로드합니다... adapter.SelectCommand=[{0}], tableName=[{1}], firstResult=[{2}], maxResults=[{3}]",
adapter.SelectCommand.CommandText, tableName, firstResult, maxResults);
var resultCount = 0;
var adoAdapter = new AdoDataAdapter(adapter);
IDataReader reader = null;
try {
reader = ExecuteReaderInternal(adapter.SelectCommand);
do {
var name = tableName.IsWhiteSpace() ? AdoTool.DefaultTableName + ++resultCount : tableName;
adoAdapter.Fill(targetDataSet, name, reader, firstResult, maxResults);
} while(!reader.IsClosed && reader.NextResult());
}
catch(Exception ex) {
if(log.IsErrorEnabled)
log.ErrorException("DataReader로부터 Data를 로드하는데 실패했습니다.", ex);
}
finally {
if(reader != null)
reader.Dispose();
//! 이거 하면 안된다!!! 호출한 놈이 해야한다.
// adoAdapter.Dispose();
}
}