复制代码 代码如下:
 
using System; 
using System.Data; 
using System.Configuration; 
using System.Collections; 
using System.Collections.Generic; 
using System.Reflection; 
using System.Collections.Specialized; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.HtmlControls; 
/// <summary> 
/// 通过对象设置获取表单值 
/// </summary> 
namespace Com.Fun 
{ 
public static class SetFormToModel<T> 
{ 
/// <summary> 
/// 将表单赋予对对象 
/// </summary> 
/// <param>实体对象</param> 
/// <param>表单集合</param> 
public static void GetValue(T t, NameValueCollection form) 
{ 
Type type = t.GetType(); 
PropertyInfo[] pi = type.GetProperties(); 
foreach (PropertyInfo p in pi) 
{ 
if (form[p.Name] != null) 
{ 
p.SetValue(t, Convert.ChangeType(form[p.Name], p.PropertyType), null); 
} 
} 
} 
/// <summary> 
/// 将对象赋予表单 
/// </summary> 
/// <param>实体对象</param> 
/// <param>页面对象</param> 
public static void SetValue(T t,Page page) 
{ 
Type type = t.GetType(); 
PropertyInfo[] pi = type.GetProperties(); 
foreach (PropertyInfo p in pi) 
{ 
System.Web.UI.HtmlControls.HtmlInputText text = page.FindControl(p.Name) as System.Web.UI.HtmlControls.HtmlInputText; 
if (text != null) 
{ 
text.Value = p.GetValue(t, null).ToString(); 
} 
} 
} 
} 
} 
//调用 
MHouseReco mh = new DHouseReco().GetModel(id); 
Com.Fun.SetFormToModel<MHouseReco>.SetValue(mh,this.Page); 
MHouseReco mh = new MHouseReco(); 
Com.Fun.SetFormToModel<MHouseReco>.GetValue(mh, this.Request.Form); 
新闻热点
疑难解答
图片精选