既存のオブジェクトの更新
ここでは、以下のような .NET のサンプル・コードを扱います。
-
ExistsId を使用して、オブジェクト ID “1” を持つ Provider.Contact インスタンスがデータベースに存在することを確認します。
-
Provider.Contact インスタンスを開きます。
-
インスタンスの Name プロパティを更新します。
-
Save を使用して、更新したインスタンスをデータベースに保存します。
-
Save 処理に失敗した場合は、コンソールにエラー・メッセージを出力します。Save から返された CacheStatus インスタンスの IsOK プロパティが false の場合は、処理に失敗しています。
try{
bool? exists = Provider.Contact.ExistsId(cnCache,"1");
if (exists.HasValue && exists.Value)
{
Provider.Contact contact = Provider.Contact.OpenId(cnCache, "1");
contact.Name = "Smith,John";
CacheStatus status = contact.Save();
if (!status.IsOK)
{
Console.WriteLine("Error Updating Contact");
}
contact.Close();
}
}
catch (CacheException e){}
この例の cnCache は、開いている CacheConnection インスタンスを表します。
ExistsId は、NULL 対応の bool? 型を返します。そのため、値は true、false、null のいずれかになります。bool 値を取得するには、キャストするか、Value プロパティを使用します。ただし、値が null の場合は、どちらの処理でも例外が返されます。そのため、bool 値にアクセスする前に、HasValue を使用して、値が null でないことを確認します。
.NET における NULL 対応型の詳細は、"C# プログラマーズ リファレンス" の "Null 許容型 (C# プログラミング ガイド)Opens in a new tab" を参照してください。