というクラスがありWebAction
ます。そして、、 、WebAction
などのいくつかのクラスは から継承されています。それらには多くの共通点がありますが、大きな違いが 1 つあります。それぞれが機能するには異なるデータセットが必要ですが、すべてが何らかのデータを必要とします。今まで不動産を持っていたLoginStartWebAction
LoginConfirmWebAction
SearchWebAction
object DataObject {get; set;}
各オブジェクトで、指定されたクラスに適した型 (ほとんどの場合、いくつかの複合型) にキャストしました。
私はこのように使用しています:
Object data = DataSet;
for (int i = stepNo; i < _actions.Count; i++)
{
_actions[i].SetData(data);
Response actionResponse = _actions[i].Perform();
ThrowErrorIfServerError(actionResponse);
if (i < _actions.Count - 1)
{
data = _actions[i].PrepareDataFor(_actions[i + 1].GetType());
}
}
しかし今、この DataObject をシリアル化し、どこかに保存する必要があります。すべての可能性があるため、型をシリアル化できませんobject
。
異なるがシリアル化可能なデータを 1 つのクラス ファミリに提供する良い方法はありますか?