DataSet.Relations 属性
生活随笔
收集整理的這篇文章主要介紹了
DataSet.Relations 属性
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
獲取用于將表鏈接起來并允許從父表瀏覽到子表的關系的集合。
屬性值
包含 DataRelation 對象的集合的 DataRelationCollection;否則為空值(如果不存在任何 DataRelation 對象)。
[Visual Basic]
Public?ReadOnly?Property?Relations()Property?Relations?As?DataRelationCollection
[C#]
public?DataRelationCollection?Relations?{get;}
示例
[Visual Basic] 以下示例通過 Relations 屬性打印所有子表的列名。
[Visual Basic]
Private?Sub?PrintChildRelationRows()Sub?PrintChildRelationRows()
???'?Declare?variable?to?hold?the?row?values.
???Dim?strRowVals?As?String
???Dim?myDataSet?As?DataSet
???'?Get?the?DataSet?of?a?DataGrid?that?is?displaying?data?of?at?least?two
???'?tables.
???Dim?myTable?As?DataTable?=?CType(DataGrid1.DataSource,?DataTable)
???'?Navigate?using?the?Relations.
???Dim?myRel?As?DataRelation
???Dim?row?As?DataRow
???Dim?col?As?DataColumn
???'?Print?the?names?of?each?column?in?each?table?through?the?Relations.
???For?Each?myRel?In?myDataSet.Relations
??????For?Each?col?in?myRel.ChildTable.Columns
??????????strRowVals?&=?col.ColumnName?&?"?"
??????Next
????Next
????'?Display?results.
????Console.WriteLine(strRowVals)
???End?Sub
又一個例子: ????????????//ADOSample3\form.cs
????????????private?void?button1_Click(object?sender,?System.EventArgs?e)
????????????{
????????????????//create?a?dataset
????????????????DataSet?ds=new?DataSet("XMLProducts");
????????????????//connect?to?the?northwind?database?and?
????????????????//select?all?of?the?rows?from?products?table?and?from?suppliers?table
????????????????//make?sure?you?connect?string?matches?you?server?configuration
????????????????
????????????????string?source?=?Login.Connection;
????????????????
????????????????SqlConnection?conn=new?SqlConnection(source);
????????????????
????????????????SqlDataAdapter?daProd=new?SqlDataAdapter("SELECT?*?FROM?Products",conn);
????????????????SqlDataAdapter?daSup=new?SqlDataAdapter("SELECT?*?FROM?Suppliers",conn);
????????????????//Fill?DataSet?from?both?SqlAdapters
????????????????daProd.Fill(ds,"products");
????????????????daSup.Fill(ds,"suppliers");
????????????????//Add?the?relation
????????????????ds.Relations.Add(ds.Tables["suppliers"].Columns["SupplierId"],
????????????????????ds.Tables["products"].Columns["SupplierId"]);
????????????????//Write?the?Xml?to?a?file?so?we?can?look?at?it?later
????????????????ds.WriteXml("..\\SuppProd.xml",XmlWriteMode.WriteSchema);
????????????????//load?data?into?grid
????????????????dataGrid1.DataSource=ds;
????????????????dataGrid1.DataMember="suppliers";
????????????????//create?the?XmlDataDocument
????????????????doc=new?XmlDataDocument(ds);
????????????????//Select?the?productname?elements?and?load?them?in?the?grid
????????????????XmlNodeList?nodeLst=doc.SelectNodes("//ProductName");
?????
????????????????foreach(XmlNode?nd?in?nodeLst)
????????????????????listBox1.Items.Add(nd.InnerXml);
????
????????????}
屬性值
包含 DataRelation 對象的集合的 DataRelationCollection;否則為空值(如果不存在任何 DataRelation 對象)。
[Visual Basic]
Public?ReadOnly?Property?Relations()Property?Relations?As?DataRelationCollection
[C#]
public?DataRelationCollection?Relations?{get;}
示例
[Visual Basic] 以下示例通過 Relations 屬性打印所有子表的列名。
[Visual Basic]
Private?Sub?PrintChildRelationRows()Sub?PrintChildRelationRows()
???'?Declare?variable?to?hold?the?row?values.
???Dim?strRowVals?As?String
???Dim?myDataSet?As?DataSet
???'?Get?the?DataSet?of?a?DataGrid?that?is?displaying?data?of?at?least?two
???'?tables.
???Dim?myTable?As?DataTable?=?CType(DataGrid1.DataSource,?DataTable)
???'?Navigate?using?the?Relations.
???Dim?myRel?As?DataRelation
???Dim?row?As?DataRow
???Dim?col?As?DataColumn
???'?Print?the?names?of?each?column?in?each?table?through?the?Relations.
???For?Each?myRel?In?myDataSet.Relations
??????For?Each?col?in?myRel.ChildTable.Columns
??????????strRowVals?&=?col.ColumnName?&?"?"
??????Next
????Next
????'?Display?results.
????Console.WriteLine(strRowVals)
???End?Sub
又一個例子: ????????????//ADOSample3\form.cs
????????????private?void?button1_Click(object?sender,?System.EventArgs?e)
????????????{
????????????????//create?a?dataset
????????????????DataSet?ds=new?DataSet("XMLProducts");
????????????????//connect?to?the?northwind?database?and?
????????????????//select?all?of?the?rows?from?products?table?and?from?suppliers?table
????????????????//make?sure?you?connect?string?matches?you?server?configuration
????????????????
????????????????string?source?=?Login.Connection;
????????????????
????????????????SqlConnection?conn=new?SqlConnection(source);
????????????????
????????????????SqlDataAdapter?daProd=new?SqlDataAdapter("SELECT?*?FROM?Products",conn);
????????????????SqlDataAdapter?daSup=new?SqlDataAdapter("SELECT?*?FROM?Suppliers",conn);
????????????????//Fill?DataSet?from?both?SqlAdapters
????????????????daProd.Fill(ds,"products");
????????????????daSup.Fill(ds,"suppliers");
????????????????//Add?the?relation
????????????????ds.Relations.Add(ds.Tables["suppliers"].Columns["SupplierId"],
????????????????????ds.Tables["products"].Columns["SupplierId"]);
????????????????//Write?the?Xml?to?a?file?so?we?can?look?at?it?later
????????????????ds.WriteXml("..\\SuppProd.xml",XmlWriteMode.WriteSchema);
????????????????//load?data?into?grid
????????????????dataGrid1.DataSource=ds;
????????????????dataGrid1.DataMember="suppliers";
????????????????//create?the?XmlDataDocument
????????????????doc=new?XmlDataDocument(ds);
????????????????//Select?the?productname?elements?and?load?them?in?the?grid
????????????????XmlNodeList?nodeLst=doc.SelectNodes("//ProductName");
?????
????????????????foreach(XmlNode?nd?in?nodeLst)
????????????????????listBox1.Items.Add(nd.InnerXml);
????
????????????}
轉載于:https://www.cnblogs.com/myx/archive/2005/01/06/87400.html
總結
以上是生活随笔為你收集整理的DataSet.Relations 属性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WebLogic Platform 8.
- 下一篇: 承受!