Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 10.49 KB | None | 0 0
  1.  
  2.     public static class WebconHelper
  3.     {
  4.         public static int Int(this object value)
  5.         {
  6.             try
  7.             {
  8.                 return Convert.ToInt32(value);
  9.             }
  10.             catch (Exception)
  11.             {
  12.                 return -1;
  13.             }
  14.         }
  15.  
  16.         public static int Int(this string value)
  17.         {
  18.             try
  19.             {
  20.                 return Convert.ToInt32(value);
  21.             }
  22.             catch (Exception)
  23.             {
  24.                 return -1;
  25.             }
  26.         }
  27.  
  28.  
  29.         #region AddValue
  30.         public static void AddValue(int id, WebconType typeAtribute, object value, ref NewElement newElement)
  31.         {
  32.             try
  33.             {
  34.                 switch (typeAtribute)
  35.                 {
  36.                     case WebconType.Text:
  37.                         if (!string.IsNullOrEmpty(Convert.ToString(value)))
  38.                         {
  39.                             newElement.TextAttributes.First(c => c.Id == id).Value = Convert.ToString(value);
  40.                         }
  41.                         break;
  42.                     case WebconType.Integar:
  43.                         if (value != null)
  44.                         {
  45.                             newElement.IntegerAttributes.First(c => c.Id == id).Value = Convert.ToInt32(value);
  46.                         }
  47.                         break;
  48.                     case WebconType.Decimal:
  49.                         if (value != null)
  50.                         {
  51.                             newElement.DecimalAttributes.First(c => c.Id == id).Value = Convert.ToDecimal(value);
  52.                         }
  53.                         break;
  54.                     case WebconType.Datatime:
  55.                         if (value != null && DateTime.Compare(Convert.ToDateTime(value), Convert.ToDateTime("0001-01-01 00:00:00")) != 0)
  56.                         {
  57.                             newElement.DateTimeAttributes.First(c => c.Id == id).Value = Convert.ToDateTime(value);
  58.                         }
  59.                         break;
  60.                     case WebconType.Bool:
  61.                         if (value != null)
  62.                         {
  63.                             newElement.BoolAttributes.First(c => c.Id == id).Value = Convert.ToBoolean(value);
  64.                         }
  65.                         break;
  66.                     case WebconType.Choose:
  67.                         if (value != null)
  68.                         {
  69.                             var chooseValue = new ChooseValue
  70.                             {
  71.                                 Id = value.ToString()
  72.                             };
  73.                             newElement.ChooseAttributes.First(c => c.Id == id).Value = chooseValue;
  74.                         }
  75.                         break;
  76.                     case WebconType.Picker:
  77.                         if (value != null)
  78.                         {
  79.                             var chooseValue = new ChooseValue[1];
  80.                             chooseValue[0] = new ChooseValue { Id = value.ToString() };
  81.  
  82.                             var pa = newElement.PickerAttributes.First(c => c.Id == id);
  83.                             pa.Value = chooseValue;
  84.                         }
  85.                         break;
  86.                 }
  87.             }
  88.             catch (Exception ex)
  89.             {
  90.                 throw new ArgumentException("Cannot bind value to field id = " + id, ex);
  91.             }
  92.         }
  93.         public static void AddValue(int id, WebconType typeAtribute, object value, ref ExistingElement existing)
  94.         {
  95.             switch (typeAtribute)
  96.             {
  97.                 case WebconType.Text:
  98.                     if (!string.IsNullOrEmpty(Convert.ToString(value)))
  99.                     {
  100.                         existing.TextAttributes.First(c => c.Id == id).Value = Convert.ToString(value);
  101.                     }
  102.                     break;
  103.                 case WebconType.Integar:
  104.                     if (value != null)
  105.                     {
  106.                         existing.IntegerAttributes.First(c => c.Id == id).Value = Convert.ToInt32(value);
  107.                     }
  108.                     break;
  109.                 case WebconType.Decimal:
  110.                     if (value != null)
  111.                     {
  112.                         existing.DecimalAttributes.First(c => c.Id == id).Value = Convert.ToDecimal(value);
  113.                     }
  114.                     break;
  115.                 case WebconType.Datatime:
  116.                     if (value != null && DateTime.Compare(Convert.ToDateTime(value), Convert.ToDateTime("0001-01-01 00:00:00")) != 0)
  117.                     {
  118.                         existing.DateTimeAttributes.First(c => c.Id == id).Value = Convert.ToDateTime(value);
  119.                     }
  120.                     break;
  121.                 case WebconType.Bool:
  122.                     if (value != null)
  123.                     {
  124.                         existing.BoolAttributes.First(c => c.Id == id).Value = Convert.ToBoolean(value);
  125.                     }
  126.                     break;
  127.                 case WebconType.Choose:
  128.                     if (value != null)
  129.                     {
  130.                         ChooseValue chooseValue = new ChooseValue();
  131.                         chooseValue.Id = value.ToString();
  132.                         existing.ChooseAttributes.First(c => c.Id == id).Value = chooseValue;
  133.                     }
  134.                     break;
  135.             }
  136.         }
  137.         public static void AddValue(int id, WebconType typeAtribute, object value, ref SubelementRow subelementRow)
  138.         {
  139.             switch (typeAtribute)
  140.             {
  141.                 case WebconType.Text:
  142.                     if (!string.IsNullOrEmpty(Convert.ToString(value)))
  143.                     {
  144.                         subelementRow.TextColumns.First(c => c.Id == id).Value = Convert.ToString(value);
  145.                     }
  146.                     break;
  147.                 case WebconType.Integar:
  148.                 case WebconType.Decimal:
  149.                     if (value != null)
  150.                     {
  151.                         subelementRow.DecimalColumns.First(c => c.Id == id).Value = Convert.ToDecimal(value);
  152.                     }
  153.                     break;
  154.                 case WebconType.Datatime:
  155.                     if (value != null && DateTime.Compare(Convert.ToDateTime(value), Convert.ToDateTime("0001-01-01 00:00:00")) != 0)
  156.                     {
  157.                         subelementRow.DateTimeColumns.First(c => c.Id == id).Value = Convert.ToDateTime(value);
  158.                     }
  159.                     break;
  160.                 case WebconType.Bool:
  161.                     if (value != null)
  162.                     {
  163.                         subelementRow.BoolColumns.First(c => c.Id == id).Value = Convert.ToBoolean(value);
  164.                     }
  165.                     break;
  166.                 case WebconType.Choose:
  167.                     if (value != null)
  168.                     {
  169.                         ChooseValue chooseValue = new ChooseValue();
  170.                         chooseValue.Id = value.ToString();
  171.                         subelementRow.ChooseColumns.First(c => c.Id == id).Value = chooseValue;
  172.                     }
  173.                     break;
  174.             }
  175.         }
  176.         #endregion
  177.         #region GetValue
  178.         public static object GetValue(int id, WebconType typeAtribute, ExistingElement existingElement)
  179.         {
  180.  
  181.             switch (typeAtribute)
  182.             {
  183.                 case WebconType.Text:
  184.                     return existingElement.TextAttributes.FirstOrDefault(c => c.Id == id).Value == null ? string.Empty : existingElement.TextAttributes.FirstOrDefault(c => c.Id == id).Value;
  185.                 case WebconType.Integar:
  186.                     return existingElement.IntegerAttributes.FirstOrDefault(c => c.Id == id).Value;
  187.                 case WebconType.Decimal:
  188.                     return existingElement.DecimalAttributes.FirstOrDefault(c => c.Id == id).Value;
  189.                 case WebconType.Datatime:
  190.                     return existingElement.DateTimeAttributes.FirstOrDefault(c => c.Id == id).Value;
  191.                 case WebconType.Bool:
  192.                     return existingElement.BoolAttributes.FirstOrDefault(c => c.Id == id).Value;
  193.                 case WebconType.Choose:
  194.                     return existingElement.ChooseAttributes.FirstOrDefault(c => c.Id == id).Value.Id;
  195.                 case WebconType.Picker:
  196.                     return existingElement.PickerAttributes.FirstOrDefault(c => c.Id == id).Value.FirstOrDefault().DisplayName;
  197.                 case WebconType.PickerID:
  198.                     return existingElement.PickerAttributes.FirstOrDefault(c => c.Id == id).Value.FirstOrDefault().Id;
  199.                 default:
  200.                     return null;
  201.             }
  202.  
  203.  
  204.         }
  205.         public static object GetValue(int id, WebconType typeAtribute, SubelementRow subelementAttribute)
  206.         {
  207.  
  208.             switch (typeAtribute)
  209.             {
  210.                 case WebconType.Text:
  211.                     return subelementAttribute.TextColumns.FirstOrDefault(c => c.Id == id).Value;
  212.                 case WebconType.Integar:
  213.                 case WebconType.Decimal:
  214.                     return subelementAttribute.DecimalColumns.FirstOrDefault(c => c.Id == id).Value;
  215.                 case WebconType.Datatime:
  216.                     return subelementAttribute.DateTimeColumns.FirstOrDefault(c => c.Id == id).Value;
  217.                 case WebconType.Bool:
  218.                     return subelementAttribute.BoolColumns.FirstOrDefault(c => c.Id == id).Value;
  219.                 case WebconType.Choose:
  220.                     if (subelementAttribute.PickerColumns.FirstOrDefault(c => c.Id == id).Value.Length == 0)
  221.                         return null;
  222.                     return subelementAttribute.ChooseColumns.FirstOrDefault(c => c.Id == id).Value;
  223.                 case WebconType.Picker:
  224.                     if (subelementAttribute.PickerColumns.FirstOrDefault(c => c.Id == id).Value.Length == 0)
  225.                         return null;
  226.                     return subelementAttribute.PickerColumns.FirstOrDefault(c => c.Id == id).Value.FirstOrDefault().DisplayName;
  227.                 case WebconType.PickerID:
  228.                     if (subelementAttribute.PickerColumns.FirstOrDefault(c => c.Id == id).Value.Length == 0)
  229.                         return null;
  230.                     return subelementAttribute.PickerColumns.FirstOrDefault(c => c.Id == id).Value.FirstOrDefault().Id;
  231.                 default:
  232.                     return null;
  233.             }
  234.         }
  235.         #endregion
  236.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement