エンド ユーザーが SharePoint サイト上の外部リストからデータ レコードを削除できるようにするには、Deleter メソッドをモデルに追加します。 詳細については、「Business Data Connectivity モデルのデザイン」を参照してください。
Deleter メソッドを作成するには
BDC デザイナーで、エンティティを選択します。
[表示] メニューの [その他のウィンドウ] をクリックし、[BDC メソッドの詳細] をクリックします。
[BDC メソッドの詳細] ウィンドウが表示されます。 [BDC メソッドの詳細] ウィンドウの詳細については、「BDC モデルのデザイン ツールの概要」を参照してください。
[BDC メソッドの詳細] ウィンドウの [メソッドの追加] ドロップダウン リストの [Deleter メソッドの作成] をクリックします。
次の要素がモデルに追加されます。 これらの要素は [BDC メソッドの詳細] ウィンドウに表示されます。
Delete というメソッド。
メソッドの入力パラメーター。
パラメーターの型記述子。
メソッドのメソッド インスタンス。
詳細については、「Business Data Connectivity モデルのデザイン」を参照してください。
ソリューション エクスプローラーで、そのエンティティ用に生成されたサービス コード ファイルを右クリックし、[コードの表示] をクリックします。
コード エディターで、エンティティ サービス コード ファイルが開きます。 エンティティ サービス コード ファイルの詳細については、「ビジネス データ接続モデルの作成」を参照してください。
Deleter メソッドにコードを追加して、レコードを削除します。 次の例では、SQL Server の AdventureWorks サンプル データベースを使用して、販売注文から品目を削除します。
注意
この例のメソッドでは、2 つの入力パラメーターを使用しています。
注意
ServerName フィールドの値を、使用するサーバーの名前に置き換えます。
Public Shared Sub Delete(ByVal salesOrderID As Integer, ByVal salesOrderDetailID As Integer) Const ServerName As String = "MySQLServerName" Dim dataContext As AdventureWorksDataContext = _ New AdventureWorksDataContext("Data Source=" & ServerName & _ ";Initial Catalog=AdventureWorks;Integrated Security=True") Dim SalesOrderDetail As SalesOrderDetail = _ (From SalesOrderDetails In dataContext.SalesOrderDetails.AsEnumerable().Take(20) _ Where SalesOrderDetails.SalesOrderID = salesOrderID And _ SalesOrderDetails.SalesOrderDetailID = salesOrderDetailID _ Select SalesOrderDetails).Single() dataContext.SalesOrderDetails.DeleteOnSubmit(SalesOrderDetail) dataContext.SubmitChanges() End Sub
public static void Delete(int salesOrderID, int salesOrderDetailID) { const string ServerName = "MySQLServerName"; AdventureWorksDataContext dataContext = new AdventureWorksDataContext ("Data Source=" + ServerName + ";" + "Initial Catalog=AdventureWorks;Integrated Security=True"); SalesOrderDetail SalesOrderDetail = (from SalesOrderDetails in dataContext.SalesOrderDetails.AsEnumerable().Take(20) where SalesOrderDetails.SalesOrderID == salesOrderID && SalesOrderDetails.SalesOrderDetailID == salesOrderDetailID select SalesOrderDetails).Single(); dataContext.SalesOrderDetails.DeleteOnSubmit(SalesOrderDetail); dataContext.SubmitChanges(); }