直接从sql server填充observableCollection

时间:2013-01-06 06:38:04

标签: sql-server observablecollection

我想知道是否有任何方法可以直接从SQL服务器填充ObservableCollection。 目前我正在将数据加载到DataTable中(使用sqlDataAdapter)并手动转换为ObservableCollection,效率非常低。

怎么做?

1 个答案:

答案 0 :(得分:4)

好的,我找到了一种方法:

可以使用SqlDataReader完成。

public ObservableCollection<DataItem> LoadCategoriesData()
{
    Command = new SqlCommand(StoredProcedure, Connection);
    Command.CommandType = CommandType.StoredProcedure;
    ObservableCollection<DataItem> myColl = new ObservableCollection<DataItem>();
    Connection.Open();
    SqlDataReader reader = Command.ExecuteReader();
    while (reader.Read())
    {
        int mainCatID = reader.GetInt32(0);
        string categoryName = reader.GetString(1);
        //adding row data to observable
        myColl.Add(new DataItem(mainCatID, categoryName));
    }
    Connection.Close();
    return myColl;
}
相关问题