[英]How to insert model from list into stored procedure
我的程序正在從一個數據庫進行查詢,我希望將該查詢添加到另一個數據庫的存儲過程中。 起初我將每個參數作為一個列表插入,但我想優化代碼並將所有參數插入一個列表。 我將所有選擇選項添加到列表中:
public void GetResult(SqlCommand command)
{
var list = new List<Models>;
using(var reader = command.ExecuteReader())
while (reader.Read())
{
var rows = new Models;
rows.Md1 = Convert.ToInt32(reader["md1"]);
rows.Md2 = Convert.ToInt32(reader["md2"]);
list.Add(rows);
}
using var InsertCommand = new OracleCommand();
InsertCommand.CommandText = "PathToProcedure";
var Param1 = new OracleParameter("param1", OracleDbType.Int32, ParameterDirecion.Input);
Param1.CollectionType = OracleCollectionType.PLSQLAssociativeArray;
Param1.Value =
Param2.Size =
}
問題:如何創建指向這些行的鏈接以將它們插入參數中? 提前致謝!
SP:
create or replace package body transfer_package is
procedure getdt(param1 in t_number,
param2 in t_number)
is
begin
if param1.count > 0 then
for i in 1 .. param1.count loop
insert into table
(parameter1,
parameter2)
values
(param1(i),
param2(i));
end loop;
end;
我的問題的解決方案是一個 Linq 庫......
Param1.Value = list.Select(Models => Models.Md1).ToArray();
Param2.Size = list.Select(Models => Models.Md2).ToArray();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.