'宣言 Public Overridable Sub Update( _ ByVal context As DataContext _ )
public virtual void Update( DataContext context )
例外 | 解説 |
---|---|
System.ArgumentException | コンテキストがサポートされる DataContext クラスまたはサブクラスでない場合スローされます。コンテキストは UpdateRemindersContext、UpdateActivityContext、AddActivityContext、RemoveActivityContext、UpdateResourceContext、AddResourceContext、RemoveResourceContext または UpdateSnoozeContext でなければなりません。 |
System.ArgumentNullException | 指定した context がnull(Visual Basic .NETではNothing)の場合にスローされます。 |
このメソッドは、IDataUpdate インターフェイスの Update メソッドを実装します。WebScheduleInfo は、ポストバック変更およびイベントの間、WebSchedule データモデルからのアクティビティとリソースへの変更を保持するために、このインターフェイスを使用します。
このメソッドは、スケジュール管理アプリケーションから直接呼び出さないでください。この代わりに、データストアからのアクティビティとリソースのインスタンスを追加、編集、削除するために、WebScheduleDbProvider によって提供されるパブリックメソッドを呼び出すことができます。
Update の基本クラス実装は次の操作を処理します。
継承クラスで独自のカスタムデータプロバイダーを作成している場合は、 Updateをオーバーライドして、追加の操作、異なるリレーショナルデータベース管理システムでの現行の操作、およびデータバインディングをサポートする必要があります( たとえば、WebScheduleデータモデルがスケジュール管理アプリケーションから永続化できる型の数を増やすなど)。WebScheduleDbProvider を拡張してカスタムデータプロバイダーを作成する場合の詳細については、ヘルプドキュメントを参照してください。
WebScheduleDbProvider (追加の操作またはデータバインディング)を拡張する場合は、最初に context をチェックして、それが拡張した DataContext のいずれかと一致するかどうかを確認します。 一致する場合は、サブクラス側でそのコンテキストを、該当する操作と ScheduleDataBinding サブクラスを処理するためにサブクラスに実装されているメソッドにディスパッチします。ディスパッチした場合、サブクラスがそれをメソッドへディスパッチして操作および ScheduleDataBinding サブクラス、またはそのどちらかを処理するために実装します。コンテキストは、認識される操作と一致しない場合は、Updateの基本実装を呼び出して、適切なディスパッチとエラー処理を行います。
新しいリレーショナルデータベース管理システム(またはその他の基になるデータソース)のサポートを追加するとき、標準操作(つまり、 "FetchActivities"や"AddActivity"など)に関するメソッドの実装はそのデータ技術と互換性がない場合があります。その場合は、サブクラスでオーバーライドした Fetch の実装で標準操作を処理し、新しいデータプラットフォームをサポートする独自のメソッドにディスパッチする必要があります。
AddActivityUpdateActivityRemoveActivityAddResourceUpdateResourceRemoveResource