DbParam.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using System;
  2. namespace Ant.Data
  3. {
  4. public class DbParam
  5. {
  6. string _name;
  7. object _value;
  8. Type _type;
  9. public DbParam()
  10. {
  11. }
  12. public DbParam(string name, object value)
  13. {
  14. this.Name = name;
  15. this.Value = value;
  16. }
  17. public DbParam(string name, object value, Type type)
  18. {
  19. this.Name = name;
  20. this.Value = value;
  21. this.Type = type;
  22. }
  23. public string Name { get { return this._name; } set { this._name = value; } }
  24. public object Value
  25. {
  26. get
  27. {
  28. return this._value;
  29. }
  30. set
  31. {
  32. this._value = value;
  33. if (value != null)
  34. this._type = value.GetType();
  35. }
  36. }
  37. public byte? Precision { get; set; }
  38. public byte? Scale { get; set; }
  39. public int? Size { get; set; }
  40. public Type Type { get { return this._type; } set { this._type = value; } }
  41. public static DbParam Create<T>(string name, T value)
  42. {
  43. var param = new DbParam(name, value);
  44. if (value == null)
  45. param.Type = typeof(T);
  46. return param;
  47. }
  48. public static DbParam Create(string name, object value)
  49. {
  50. return new DbParam(name, value);
  51. }
  52. public static DbParam Create(string name, object value, Type type)
  53. {
  54. return new DbParam(name, value, type);
  55. }
  56. }
  57. }