私はいくつかの関連トピックを見てきましたが、私の質問は完全には答えられていません:
Web アプリケーションのコード ビハインドでストアド プロシージャを実行する場合、次のようなセットアップがあります。問題は、複数の製品を挿入する可能性に直面していることです。何度も実行するExecuteNonQueryのではなく、すべてを 1 つにまとめて実行したいと考えています。foreach loopn
これを行う方法がわかりません。現在のセットアップで可能かどうかもわかりません。
コードは自明である必要がありますが、明確化が必要な場合はお知らせください。ありがとう。
SqlDatabase database = new SqlDatabase(transMangr.ConnectionString);
DbCommand commandWrapper = StoredProcedureProvider.GetCommandWrapper(database, "proc_name", useStoredProc);
database.AddInParameter(commandWrapper, "@ProductID", DbType.Int32, entity._productID);
database.AddInParameter(commandWrapper, "@ProductDesc", DbType.String, entity._desc);
...more parameters...
Utility.ExecuteNonQuery(transMangr, commandWrapper);
プロシージャ
ALTER PROCEDURE [dbo].[Products_Insert]
-- Add the parameters for the stored procedure here
         @ProductID int,
         @Link      varchar(max)
         @ProductDesc          varchar(max)
         @Date          DateTime
    AS BEGIN
SET NOCOUNT ON;
INSERT INTO [dbo].[Prodcuts]
    ( 
        [CategoryID],
        [Link],
        [Desc],
        [Date]
    )
VALUES
    (
        @ProductID,
        @Link,
        @ProductDesc,
        @Date
    )
終わり