标题:从某数据表中的多个字段提取数据赋值为泛型List的方案???
只看楼主
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
结帖率:100%
 问题点数:0 回复次数:5 
从某数据表中的多个字段提取数据赋值为泛型List的方案???
看到一个例子(见下),是将从某数据表中的多个字段提取数据赋值为泛型List的方法,想了解除此之外,还有什么方法实现同样的功能???谢谢!

/// <summary>
/// Summary description for MilitaryInstallation
/// </summary>
public class AnAthlete
{
    public AnAthlete()
    {
    }

    public AnAthlete(int id, string service, string name, string city, string state, string websiteUrl, double latitude, double longitude)
    {
        _id = id;
        _service = service;
        _name = name;
        _city = city;
        _state = state;
        _websiteUrl = websiteUrl;
        _latitude = latitude;
        _longitude = longitude;
    }
    private int _id;

    public int Id
    {
        get { return _id; }
        set { _id = value; }
    }

    private string _service;

    public string Service
    {
        get { return _service; }
        set { _service = value; }
    }

    private string _name;

    public string Name
    {
        get { return _name; }
        set { _name = value; }
    }

    private string _city;

    public string City
    {
        get { return _city; }
        set { _city = value; }
    }

    private string _state;

    public string State
    {
        get { return _state; }
        set { _state = value; }
    }

    private string _websiteUrl;

    public string WebsiteUrl
    {
        get { return _websiteUrl; }
        set { _websiteUrl = value; }
    }

    private double _latitude;

    public double Latitude
    {
        get { return _latitude; }
        set { _latitude = value; }
    }

    private double _longitude;

    public double Longitude
    {
        get { return _longitude; }
        set { _longitude = value; }
    }

}

---------------------------------------------------------------

 public List<AnAthlete> GetAthletesByService(string service)
    {
    SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["MyDB"].ConnectionString);

    SqlCommand cmd = new SqlCommand(
            @"SELECT Id, Weight, Name, City, State, WebsiteUrl, Latitude, Longitude
              FROM Athlete
              WHERE (Weight = @Weight)", cn);

    cmd.Parameters.AddWithValue("Weight", service);

    List<AnAthlete> retrievedAthletes = new List<AnAthlete>();

    cn.Open();
    using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
    {
        while (dr.Read())
        {
            retrievedAthletes.Add(new AnAthlete(dr.GetInt32(0),
                                                dr.GetString(1),
                                                dr.GetString(2),
                                                dr.GetString(3),
                                                dr.GetString(4),
                                                dr.GetString(5),
                                                dr.GetDouble(6),
                                                dr.GetDouble(7)));
            }
        }
        return retrievedAthletes;
    }
搜索更多相关主题的帖子: 赋值 字段 List 泛型 数据 
2008-01-11 12:39
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
得分:0 
DataTable 等都可以

飘过~~
2008-01-11 12:53
191638141
Rank: 1
等 级:新手上路
帖 子:112
专家分:0
注 册:2008-1-5
得分:0 
datagrid datalist datagrid repeater
还有自定义的 datatable.
2008-01-12 21:36
shenba
Rank: 1
等 级:新手上路
威 望:1
帖 子:179
专家分:0
注 册:2006-9-17
得分:0 
数据访问方式用ibatis的话,定义自己的实体,然后可以返回泛型的IList

2008-01-13 09:14
hex_maddog
Rank: 1
等 级:新手上路
帖 子:116
专家分:0
注 册:2007-11-21
得分:0 
可以在vs2005里的选项中把运行不安全那个选项钩上先
定义一个类,在定义两个变量,一个是object变量,一个是指针变量
如果要实现一个链式的数组(速度比较快),就让指针对应下个类的地址(下个地址为本地址加上类的长度)
如果要实现一个非链式的,直接把下个类的地址赋给它
把末尾的类的指针变量的值设为第一个类的地址,还能实现循环的数组
2008-01-13 15:47
hex_maddog
Rank: 1
等 级:新手上路
帖 子:116
专家分:0
注 册:2007-11-21
得分:0 
其实ArrayList HashTable 本身就是派生类,他们的定义应该就和我上面差不多的
2008-01-13 15:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-197014-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.270974 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved