zoukankan      html  css  js  c++  java
  • 将表单赋予对对象

     
         /// <summary>
            ///  将表单赋予对对象 
            /// </summary>
            /// <typeparam name="T">类型参数</typeparam>
            /// <param name="t">实体对象</param>
            /// <param name="form">表单集合</param>
            public static void GetValue<T>(T t, NameValueCollection form)
            {
                Type type = t.GetType();
                PropertyInfo[] pi = type.GetProperties();
                foreach (PropertyInfo p in pi)
                {
                    if (!string.IsNullOrEmpty(form[p.Name]))
                    {
                        //可空类型
                        if (p.PropertyType.FullName == "System.Nullable`1[[System.DateTime, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
    
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToDateTime(form[p.Name]), null);
                            }
                        }
                        else if (p.PropertyType.FullName == "System.Nullable`1[[System.DateTime, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToDateTime(form[p.Name]), null);
                            }
                        }
                        else if (p.PropertyType.FullName == "System.Nullable`1[[System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToInt32(form[p.Name]), null);
                            }
                        }
                        else if (p.PropertyType.FullName == "System.Nullable`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToInt32(form[p.Name]), null);
                            }
                        }
                        else if (p.PropertyType.FullName == "System.Nullable`1[[System.Int64, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToInt64(form[p.Name]), null);
                            }
                        }
                        else if (p.PropertyType.FullName == "System.Nullable`1[[System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToInt64(form[p.Name]), null);
                            }
                        }
                        else if (p.PropertyType.FullName == "System.Nullable`1[[System.Decimal, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToDecimal(form[p.Name]), null);
                            }
                        }
                        else if (p.PropertyType.FullName == "System.Nullable`1[[System.Decimal, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToDecimal(form[p.Name]), null);
                            }
                        }
                        else if (p.PropertyType.FullName == "System.Nullable`1[[System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToBoolean(form[p.Name]), null);
                            }
                        }
                        else if (p.PropertyType.FullName == "System.Nullable`1[[System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]")
                        {
                            if (!string.IsNullOrEmpty(form[p.Name]))
                            {
                                p.SetValue(t, Convert.ToBoolean(form[p.Name]), null);
                            }
                        }
                        else
                        {
                            p.SetValue(t, Convert.ChangeType(form[p.Name], p.PropertyType), null);
                        }
    
                    }
                }
            }
  • 相关阅读:
    [BZOJ 3774] 最优选择 【最小割】
    [XJOI NOI2015模拟题13] C 白黑树 【线段树合并】
    [BZOJ 2212] [Poi2011] Tree Rotations 【线段树合并】
    [XJOI NOI2015模拟题13] B 最小公倍数 【找规律】
    [XJOI NOI2015模拟题13] A 神奇的矩阵 【分块】
    [XJOI NOI02015训练题7] B 线线线 【二分】
    Java+Maven+selenium+testng+reportng自动化测试框架
    selenium实例:unittest框架+PO开发模式
    WebDriver驱动下载地址
    testng 执行多个suite
  • 原文地址:https://www.cnblogs.com/haomo/p/6243325.html
Copyright © 2011-2022 走看看