如何使用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

请帮助! !

如何使用Ado.net c#插入项目列表

可以在数据库中定义包含projectIdUserid列的用户定义表类型。然后可以使用DataTable将数据传递给存储过程。

。http://www.codeproject.com/Articles/412802/Sending-a-DataTable-to-a-Stored-Procedure

谢谢!