差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
| dotnet:dataset [2009/01/21 16:51] – nakayama | dotnet:dataset [2019/05/18 02:23] (現在) – 外部編集 非ログインユーザー | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| ====== DataSet クラス (System.Data) ====== | ====== DataSet クラス (System.Data) ====== | ||
| + | ===== XMLの読み込み/ | ||
| + | [C#] | ||
| + | <code csharp> | ||
| + | // 読み込み対象ファイルパス | ||
| + | string fileName = @" | ||
| + | // XMLファイルの読み込み | ||
| + | xmlDataSet.ReadXml(fileName); | ||
| + | </ | ||
| + | |||
| + | [C#] | ||
| + | <code csharp> | ||
| + | // 書き込み対象ファイルパス | ||
| + | string fileName = @" | ||
| + | // XMLファイルの書き込み | ||
| + | xmlDataSet.WriteXml(fileName); | ||
| + | </ | ||
| + | |||
| + | ===== 未知のXML形式から型付データセット用にXSDを生成 ===== | ||
| + | [C#] | ||
| + | <code csharp> | ||
| + | // 未知のXML形式ファイルパス | ||
| + | string xmlFileName = @" | ||
| + | // XSDファイルパス | ||
| + | string xsdFileName = @" | ||
| + | // XMLファイルの読み込み | ||
| + | xmlDataSet.ReadXml(xmlFileName ); | ||
| + | // XSDファイルの書き込み | ||
| + | xmlDataSet.WriteXmlSchema(xsdFileName); | ||
| + | </ | ||
| + | XSDファイルは Visual Studio にドラッグアンドドロップすることで型付データセットを生成できる。\\ | ||
| + | また、型付データセット内の余分な DataTable を削除して、型付データセットを利用して ReadXml() を行うことで、余分なテーブルデータをスキップしてXMLファイルを読み込むことができる。 | ||
| + | |||
| ===== DataTableのソート ===== | ===== DataTableのソート ===== | ||
| + | DataTableのソートは、DataViewのSort機能を利用して行うことができる。しかし、型付DataSetの場合は、DataViewによってソートを行いToTable()メソッドで結果を得ようとすると、ToTable()メソッドはDataTable型を返却するため、ソートを行った以降の処理で型付DataSetによって自動生成されたコードの恩恵を受けられなくなってしまう。\\ | ||
| + | \\ | ||
| + | ここでは、ジェネリックメソッドを実装して、型付DataSetのDataTableを型付のままソートする方法を紹介する。\\ | ||
| + | \\ | ||
| [VB] | [VB] | ||
| <code vbnet> | <code vbnet> | ||
| + | Imports System | ||
| Imports System.Data | Imports System.Data | ||
| 行 27: | 行 64: | ||
| [C#] | [C#] | ||
| <code csharp> | <code csharp> | ||
| + | using System; | ||
| using System.Data; | using System.Data; | ||
| 行 56: | 行 94: | ||
| [C++] | [C++] | ||
| <code cpp> | <code cpp> | ||
| + | using namespace System; | ||
| using namespace System:: | using namespace System:: | ||
| 行 77: | 行 116: | ||
| } | } | ||
| </ | </ | ||
| + | |||