次のような ObjectDataSource セットアップがある場合:
<asp:ObjectDataSource
ID="ObjectDataSource1"
runat="server"
DataObjectTypeName="Employee"
InsertMethod="Insert"
UpdateMethod="Update"
DeleteMethod="Select"
TypeName="EmployeeDB">
</asp:ObjectDataSource>
および次のようなメソッドを持つデータ/ビジネス オブジェクト:
public class EmployeeDB
{
public void Insert(Employee emp)
public int Update(Employee emp)
public bool Delete(int id)
}
Employee オブジェクトではないパラメータで Delete メソッドを使用するように objectdatasource を取得するにはどうすればよいですか?
これが不可能な場合、推奨される代替アーキテクチャは何ですか?
編集:
明確にするために、上記のようにデータ/ビジネス オブジェクトでメソッド シグネチャを使用したいのですが、DataObjectTypeName を使用して一部のメソッドに Employee オブジェクトを渡すことを許可しようとすると、いくつかのメソッドを持つことができなくなったようです。たとえば、整数の ID だけを取ります。
DataObjectTypeName を使用しない場合は、すべてのメソッド パラメータを ObjectDataSource に配置し、データ/ビジネス オブジェクトのメソッドを一致するように変更する必要があります。従業員オブジェクトが変更されると、私はしなければならないため、これは悪い設計選択のように思えます。これらの各メソッドを更新します。より良いアーキテクチャはありますか?