var paramSortColumn = new SqlParameter("@SortColumn", SqlDbType.NVarChar, 200) { Value = SortColumn };
var paramSortOrder = new SqlParameter("@SortOrder", SqlDbType.NVarChar, 10) { Value = SortOrder };
var paramStartIndex = new SqlParameter("@StartIndex", SqlDbType.Int) { Value = filter.StartIndex - 1 };
var paramItemsPerPage = new SqlParameter("@ItemsPerPage", SqlDbType.Int) { Value = filter.ItemsPerPage };
var paramDealerBranchID = new SqlParameter("@DealerBranchIDs", SqlDbType.NVarChar){Value = selectedIds };
var paramBypassDealerBranchIDs = new SqlParameter("@BypassDealerBranchIDs", SqlDbType.TinyInt) { Value = Convert.ToInt32(filter.ByPassDealerBranchIDs) };
var result =
_dbContext.Database.SqlQuery<DealerMappingDetailsReportModel>(
"usp_DealerMappingDetail @DealerBranchIDs,@BypassDealerBranchIDs,@SortColumn,@SortOrder,@StartIndex,@ItemsPerPage",
paramDealerBranchID, paramBypassDealerBranchIDs, paramSortColumn, paramSortOrder, paramStartIndex, paramItemsPerPage
);
return result.ToList();
EFはSqlParameterがすでに別のSqlParameterCollection
にSQLストアドプロシージャを呼び出していに含まれるエラーを返しますが、それはSqlParameterがすでにによって含まれる
返します別の SqlParameterCollection
リセット(新しい)あなたのDbContext – ErikEJ
は() 'を直接クエリ実行後' ToListメソッドを使用してみてください:。 'VAR結果= _dbContext.Database.SqlQuery(「usp_DealerMappingDetail @ DealerBranchIDs、@ BypassDealerBranchIDs、...)ToListメソッド( ); 'return result; –
問題が解決しました 新しい変数を宣言し、Convert.ToInt32(filter.ByPassDealerBranchIDs)の値を渡しました。 –