WCFデータサービスとChangeInterceptor
-
28-09-2019 - |
質問
ChangeInterceptor内のPut Verbを介して送信された情報を見て変更したいと思います。
たとえば、DataSourceを更新する前に、渡されたすべての値をスクラブしたい場合があります。
あるいは、Javaスクリプトを介してデータサービスを呼び出すことができ、サーバー上の値が完全に完成したオブジェクト上のすべての現在のプロパティを渡さないことができます。
すごい...
OnChangeMyObject<MyObject,Update...>{
if(UpdateOperations == UpdateOperations.change){
MyObject == the object to be updated but not the object passed in from the
caller. How can I access the object from the caller?
}
}
解決
変更インターセプターでこのようなことができると思います。
if (operations == UpdateOperations.Change)
{
CurrentDataSource.SavingChanges += (o,e) => ValidatePutData(yourEntityObject);
}
メソッドが検証されている場合、変更されたオブジェクトデータをチェックします。この方法は、EFが変更を保存したときに呼び出されます。その時点で、エンティティオブジェクトのインスタンスには、put reqestで送信された新しいデータが含まれています。
所属していません StackOverflow