asp.net 如何取出List<T>中每一项的值
作者&投稿:南灵 (若有异议请与网页底部的电邮联系)
.NET中泛型集合有 List list=new List(); 和List list=new List(); 可以用 for 也可以用 foreach for(inr i=0;i<list.length;i++){string a=list[i].name; //点对象的属性} foreach (T item in list)//同理
{
string a= item.name;
}
这是Java中的取法,我需要的是C#中的取法,不过参考你的答案问题解决了。谢谢!
你在实例化的时候如何做到T是的类型是不确定的?。。。泛型类是这么用的
public class MyList<T> : List<T>
{
//这里重写一个将T中的属性全显示出来的方法
public override string ToString()
{
string result = string.Empty;
foreach (T obj in this)
{
result += "[";
PropertyInfo[] ps = obj.GetType().GetProperties();
//循环获取该对象的所有属性和值
foreach (PropertyInfo info in ps)
{
result += "属性:" + info.Name + " ";
result += "值:" + info.GetValue(obj,null)+" ";
}
result += "],";
}
return result.TrimEnd(',');
}
}
然后自定义一个对象Student
public class Student
{
private string _name = string.Empty;
public string Name
{
set { _name = value; }
get { return _name; }
}
private int _age = 0;
public int Age
{
set { _age = value; }
get { return _age; }
}
}
使用时:
Student s1 = new Student();
s1.Name = "stu1";
s1.Age = 90;
Student s2 = new Student();
s2.Name = "stu2";
s2.Age = 70;
MyList<Student> list = new MyList<Student>();
//如果你需要跨页面传递,这里可以选择把list存到Session里
list.Add(s1);
list.Add(s2);
//跨页面的话,要把Session转换回来,这里模拟一下就用上边已经定义的list了
IList<Student> newList=list;
//newList.ToString()显示所有对象的属性和值,已经在泛型集合里定义好的
Console.WriteLine(newList.ToString());
Console.Read();
我有点疑问啊,页面之间能传集合吗?页面间传值方式无非那么几种,session,application, QueryString。。。
除非你是页面A 的class A 调用 页面B 的 方法 public voidTest<T>()(List<T> list)
{
}
如果是这样,这个泛型泛型T必须进行泛型约束 , 比如这里有个 class C
public voidTest<T>()(List<T> list) where T: C
{
//在这里边你可以使用 C类型对象的属性和方法
}
你怎么传递到b页面?
是说传递到b的一个方法里吗?
b页面方法大致代码如下:
void abc<T>(List<T> list){
foreach(T item in list){
// 对当前这一项做处理吧
}
}
城周艾鲁: ASP.NET导出成EXCEL的方法很多,只需要调用EXCEL的程序接口即可,前提是运行你网站的这台电脑上安装了 EXCEL软件(至少为2003版本),不过对于服务器来说,EXCEL是一个相当累赘的东西,建议你还是去搜索下 LIST 转 CSV 的方法,CSV格式不需要任何EXCEL的接口,输出的文件既可以被EXCEL打开,也可以使用TXT打开,服务器的负担也仅限于读取LIST数据而已.
平顺县17746837566: asp.net 如何取出List<T>中每一项的值 - ?
城周艾鲁: 你在实例化的时候如何做到T是的类型是不确定的?...泛型类是这么用的 public class MyList : List { //这里重写一个将T中的属性全显示出来的方法 public override string ToString() { string result = string.Empty; foreach (T obj in this) { result += "[...
平顺县17746837566: asp.net怎么从application中去list<> - ?
城周艾鲁: (1)List strs = Application["USERS"] as List; (2)List strs = (List)Application["USERS"];(1)比(2)好,强制转换容易报错.用(1)转换,若不成功,则返回null
平顺县17746837566: ASP.NET中如何获取List<>中的值??
城周艾鲁: 应该直接就可以用list[ ] 直接数组的形式获取值 获取所有的值用foreach
平顺县17746837566: Asp.Net List<Object> 如何取对象?? - ?
城周艾鲁: List[index] Object object = (Object) List[index];index是索引,和数组类似
平顺县17746837566: 在asp中如何取出数据库中的一列值,并将这列值的总和输出 - ?
城周艾鲁: 通过循环读取,然后累加 打开数据库 打开表 假设字段名为fa while not rs.eof sum=sum+rs("fa") rs.movenext wend response.write sum
平顺县17746837566: asp.net如何倒出数据库里的内容??
城周艾鲁: /// <summary> /// 导出Excel数据 /// </summary> /// <param name="ds"></param> /// <param name="typeid"></param> /// <param name="FileName"></param> public void CreateExcel(DataSet runnerlist, string typeid, string FileName) { ...
平顺县17746837566: .NET中怎么将LIST中的值一个一个取出来? - ?
城周艾鲁: .NET中泛型集合有 List<T> list=new List<T>(); 和List<K,T> list=new List<K,T>(); 可以用 for 也可以用 foreach for(inr i=0;i<list.length;i++){string a=list[i].name; //点对象的属性} foreach (T item in list)//同理 { string a= item.name; }
平顺县17746837566: asp.net如何提取数据库中的值 - ?
城周艾鲁: Sqlserver数据库可以采用:ADO.NET才获取数据库中的值:public string GetPhoneByUserName(string UserName) { SqlConnection conn = new SqlConnection("Server=.;database=数据库名;uid=sa;pwd=***"); conn.Open(); SqlCommand ...
平顺县17746837566: 在asp.net中,怎样把从数据库查询出的一行数据分别取出它每一列的值? - ?
城周艾鲁: SqlConnection con = new SqlConnection(@"server=.\sqlexpress;database=TestDataBase;uid=sa;pwd=123"); con.Open(); SqlCommand cmd = new SqlCommand("select * from Test1", con); SqlDataAdapter sda = new SqlDataAdapter(cmd...