ページの先頭行へ戻る
Interstage Shunsaku Data Manager アプリケーション開発ガイド

7.4.2 .NET APIの記述例

1つのトランザクションを扱う.NET APIの場合の記述例について、以下に示します。

/*
 * 以下のように用意されていることを仮定しています。
 *  sPerson :追加したい従業員の情報
 *  sQuery :検索式を格納した文字列
 *  sReturn :リターン式を格納した文字列
 *  updateData :更新データを格納した文字列
 */
// ShunServiceオブジェクトを作成
// 接続先のホスト名:DirSvr1
// ポート番号:23101
// Shunsaku File名: fileA

ShunService service = new ShunService();
service.Host = "DirSvr1";
service.Port = 23101;
service.ShunsakuFile = "fileA";
service.Connect();

// 自動コミットを無効に設定
service.AutoCommit = false;

ShunRecordCollection insertRecords = new ShunRecordCollection();
ShunRecord personRecord = new ShunRecord( sPerson );
insertRecords.Add( personRecord );

// データ追加
service.Insert( insertRecords );

//接続先のShunsaku FileをfileDに切替え
service.ChangeShunsakuFile("fileD");

ShunSearchRequirement req = new ShunSearchRequirement();
req.QueryExpression = sQuery;
req.ReturnExpression = sReturn;
// 更新用のデータを検索
ShunResultSet rs = service.Search( req );
ShunRecord updateRecord = null;
foreach ( ShunRecord record in rs.Records ) {
  updateRecord = record;
}
updateRecord.Data = updateData;

ShunRecordCollection updateRecords = new ShunRecordCollection();
updateRecords.Add( updateRecord );

//データ更新
service.Update( updateRecords );

// ここまでの更新をコミット
service.Commit();

service.Disconnect();