Guest User

Untitled

a guest
Sep 3rd, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.82 KB | None | 0 0
  1. Using SqlCommand , how to add multiple parameters to its object , insertion via winform in sql table
  2. INSERT INTO item (c1,c2,c3...,c10) values (@a,@b....@j)
  3.  
  4. cmd.Parameters.Add("@a",SqlDbType.Varchar)
  5. cmd.Parameteres["@a"].Value=textbox1.Text;
  6.  
  7. cmd.Parameters.Add("@b",SqlDbType.Varchar)
  8. cmd.Parameteres["@b"].Value=textbox2.Text;.
  9. .
  10. .
  11. .
  12. .
  13. cmd.Parameters.Add("@j",SqlDbType.Varchar)
  14. cmd.Parameteres["@j"].Value=textbox10.Text;
  15.  
  16. INSERT INTO item (c1) values (@a)
  17. cmd.Parameters.Add("@a",SqlDbType.Varchar)
  18. cmd.Parameteres["@a"].Value=textbox1.Text;
  19.  
  20. INSERT INTO item (c2) values (@b)
  21. cmd.Parameters.Add("@b",SqlDbType.Varchar)
  22. cmd.Parameteres["@b"].Value=textbox2.Text;.
  23. .
  24. .
  25. INSERT INTO item (c10) values (@j)
  26. cmd.Parameters.Add("@j",SqlDbType.Varchar)
  27. cmd.Parameteres["@j"].Value=textbox10.Text;
  28.  
  29. public static class DbCommandExtensions
  30. {
  31. public static void AddInputParameters<T>(this IDbCommand cmd,
  32. T parameters) where T : class
  33. {
  34. foreach (var prop in parameters.GetType().GetProperties())
  35. {
  36. object val = prop.GetValue(parameters, null);
  37. var p = cmd.CreateParameter();
  38. p.ParameterName = prop.Name;
  39. p.Value = val ?? DBNull.Value;
  40. cmd.Parameters.Add(p);
  41. }
  42. }
  43. }
  44.  
  45. cmd.AddInputParameters(new { a = textBox1.Text, b = TextBox2.Text, /* etc */ });
  46.  
  47. cmd.Parameters.AddWithValue("@j",textbox10.Text);
  48. cmd.Parameters.AddWithValue("@k",textbox11.Text);
  49. cmd.Parameters.AddWithValue("@l",textbox12.Text);
  50.  
  51. void AddParams(DBCommand cmd,params object[] parameters)
  52. {
  53. if (parameters != null)
  54. {
  55. int index = 0;
  56. while (index < parameters.Length)
  57. {
  58. cmd.Parameters.AddWithValue("@"+(string)parameters[index], parameters[index + 1]);
  59. index += 2;
  60. }
  61. }
  62. }
  63.  
  64. AddParams(a,"test1",b,3,c,DateTime.Now);
Add Comment
Please, Sign In to add comment