例外 | 解説 |
---|---|
System.ArgumentNullException | 指定した activity が null 参照(Visual Basic .NET では Nothing) の場合にスローされます。Activity のプロパティをデータソースに挿入するためには、 Activity が null 以外である必要があります。 |
System.NotSupportedException | activity の具象型が Appointment 以外の場合にスローされます。現時点でデータソースに挿入できるのは Appointment オブジェクトのみです。 |
System.ComponentModel.WarningException | AddActivity を呼び出す前に、WebScheduleInfo プロパティが適切に初期化されていなかった場合にスローされます。AddActivity で指定した activity をデータストアに追加するためには、WebScheduleDataProviderBase がすでに activity と同じ WebScheduleInfo で初期化されている必要があります。 |
WebScheduleは、エンドユーザーがユーザー インターフェイスから新しい Appointment を発行したとき、 Activity の追加を自動的に処理します。プログラムで作成したアクティビティを追加するには、AddActivity を呼び出します。通常、WebScheduleInfo の ActivitiesCollection に追加された Activity インスタンスは、データストアに自動的に保存されません。
AddActivity メソッドは、外部スケジュール情報を WebSchedule データモデルに変換してデータストアに一括読み込みする管理アプリケーションやバッチアプリケーションもサポートします。たとえば、Microsoft Exchangeからユーザースケジュールを抽出、変換して WebSchedule に読み込みするアプリケーションなどがそれに該当します。
このメソッドは Activity データテーブルに新しい行を追加するため、指定された activity の DataKey または Key プロパティの設定は無視されます。このメソッドが成功した場合、指定された Activity オブジェクト参照の DataKey は、データベースによって自動生成された識別子に変更されます。
指定した resource は、ActivityResource子テーブルへの新しい行の入力に使用されます。resource を指定した場合、そのリソースは WebScheduleInfo の ResourcesCollection とデータストア内に存在する必要があります。存在しない場合は、WebSchedule データモデルの参照整合性制約違反が発生します。resource の DataKey はこの行を ActivityResource に追加するときに使用され、この操作に対して有効である必要があります。
resource を省略した場合 (null(Visual Basic .NET では Nothing)を渡した場合)、activity はデフォルトで UnassignedResource に関連付けられます。