如何使用Ado.net c#插入项目列表
本文关键字:插入项目 列表 net 何使用 Ado | 更新日期: 2023-09-27 18:11:30
我有一个存储过程,它有2个参数,第一个projectId
和第二个Userid
但是我必须使用单个连接将列表映射到特定的项目,但是我不知道如何插入整个列表。
internal bool MapEmployeesToProject(int projectId, List<Users> lstUserToMap)
{
int value = 0;
bool check = true;
SqlConnection conn = new SqlConnection(VSTMConfigurations.ConnectionString);
using (conn)
{
SqlParameter[] param = new SqlParameter[2];
param[0] = new SqlParameter("@ProjectId",projectId );
param[1] = new SqlParameter("@ProjectDetails", );
// if there is a single user than i could pass userid here
// i am phasing a problem how to pass whole listOfUsers
using (SqlCommand cmd1 = CreateCommand(conn, param))
{
cmd1.CommandText = "sp_MapProject";
try
{
conn.Open();
SqlTransaction transaction = conn.BeginTransaction();
cmd1.Transaction = transaction;
try
{
value = Convert.ToInt32(cmd1.ExecuteNonQuery());
if (value > 0)
{
transaction.Commit();
check = true;
}
else
{
transaction.Rollback();
check = false;
}
}
catch (Exception ex1)
{
transaction.Rollback();
check = false;
}
finally
{
transaction.Dispose();
}
}
catch (Exception ex)
{
check = false;
}
}
}
return check;
}
存储过程
sp_MapProject
(@ProjectId int,@UserId int)
as
begin
Insert into ProjectUsers values (@ProjectId,@UserId)
end
请帮助! !
可以在数据库中定义包含projectId
和Userid
列的用户定义表类型。然后可以使用DataTable将数据传递给存储过程。
。http://www.codeproject.com/Articles/412802/Sending-a-DataTable-to-a-Stored-Procedure
谢谢!