在我的代碼我有一個返回數據集功能,但我不能改變它,所以我希望:數據集可以包含其他對象的集合嗎?
- 一個DataSet可以包含其他數據集?
- 或者數據表是否可以包含一個包含數據表的數據集
- 或者我可以將通用列表轉換爲數據表,然後將其添加到數據集中?
這是否可能?
在我的代碼我有一個返回數據集功能,但我不能改變它,所以我希望:數據集可以包含其他對象的集合嗎?
這是否可能?
這裏回答你的問題
在斷開連接的緩存數據集存儲數據。數據集的結構與關係數據庫的結構相似。它公開了表,行和列的分層對象模型。另外,它包含爲數據集定義的約束和關係。 如果要在與數據源斷開連接時使用一組表和行,則可以使用數據集。
- DataSet對象是中央支持斷開連接
- DataSet是數據
- 數據集表示一個完整的數據集,包括表之間的關聯表,約束,和關係的存儲器駐留表示
- ADO.NET數據集包含由數據表所表示的零個或更多個表對象的集合
這裏是MSDN Link更多信息
希望這將有助於
你好@ J.Steen ..我已經更新了我的答案。感謝您的信息。 – Microtechie
非常感謝您的幫助 –
1)沒有,在一個數據集,你只能把桌子和關係,你不能把其他數據集內
2)無,Datatable可以包含一些具有特定類型的列,但不是一個好的使用方法。
3)您可以使用此:
public static class Extensions
{
public static DataTable ToDataTable<T>(this IList<T> data)
{
PropertyDescriptorCollection propriedades = TypeDescriptor.GetProperties(typeof(T));
DataTable dtTabela = new DataTable();
for (int i = 0; i < propriedades.Count; i++)
{
PropertyDescriptor prop = propriedades[i];
dtTabela.Columns.Add(prop.Name, prop.PropertyType);
}
object[] objValores = new object[propriedades.Count];
foreach (T item in data)
{
for (int i = 0; i < objValores.Length; i++)
{
objValores[i] = propriedades[i].GetValue(item);
}
dtTabela.Rows.Add(objValores);
}
return dtTabela;
}
非常感謝您的幫助 –
你是怎麼發現當你試過嗎? ;) –
no - 不能做 - 唯一的方法是插入json - 想知道是否有人有另一個想法 –
也許如果你試圖描述你的*實際*問題和嘗試解決方案,而不是如何解決問題的想法,我們一無所知,我們可以幫忙。 =) –