我有一个id和更多filepaths.forexample:
ID:123456
文件路径: C:/a.jpg C:/b.jpg C:/c.jpg C:/d.jpg C:/e.jpg
结果必须是:
123456 | C:/a.jpg
123456 | C:/b.jpg
123456 | C:/c.jpg
123456 | C:/d.jpg
123456 | C:/e.jpg
如何为一个ID添加多个路径
但我的结果是:
123456 | C:/e.jpg
我需要其他人
public bool AddDCMPath2(string id, string[] FilePath)
{
SqlConnection con = new SqlConnection("Data Source=(localhost);Initial Catalog=ImageServer; User ID=sa; Password=GENOTIP;");
SqlCommand cmd = new SqlCommand("INSERT INTO StudyDCM (StudyInstanceUid,FilePath) VALUES (@StudyInstanceUid,@FilePath)", con);
try
{
con.Open();
cmd.CommandType = CommandType.Text;
foreach (string filepath in FilePath)
{
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@FilePath", filepath);
cmd.ExecuteNonQuery();
}
}
finally
{
if((con!=null))
con.Dispose();
if((cmd!=null))
cmd.Dispose();
}
return true;
}
答案 0 :(得分:1)
您必须将它们序列化为单个字符串,即使用分隔符(例如“|”)连接路径,然后将组合的字符串输入数据库。读取时,获取组合字符串并将其拆分,然后使用路径。
答案 1 :(得分:0)
foreach (string filepath in FilePath)
{
cmd.Parameters.AddWithValue("@StudyInstanceUid", StudyInstanceUid);
cmd.Parameters.AddWithValue("@FilePath", filepath);
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
}