2008-09-16 16 views
6

私は、データベースから取得したデータセットに基づいてXMLファイルを生成する必要のある.netアプリケーションで作業しています。 XMLスキーマは、提供されたxsdに基づいている必要があります。私は、データセットまたは各データロードをxsdにバインドまたは関連付ける方法があるかどうかを知りたいと思います。私はそれがまったくできるかどうか、あるいは間違った視点でXSDの使用を考えているかもしれないかどうかはわかりません。私が間違っている場合は、私から修正して、dbから取得したデータをあらかじめ定義されたスキーマに関連付ける最良の方法を教えてください。ありがとう。xsdを使って.netでXMLを生成する

更新:もしxsdに関する私の見解が間違っていたら、xsdの使い方についての光を見せてください(あるいは役に立つリンクを教えてください)。

+0

私はそのようなコードを探していますが、利用可能なレディメイドはありません。単純ではないようです。まあ。 Altova XMLSpyの使い方は、宝石のようにXMLを作成するためのものです。 –

答えて

1

- XSDから型付きデータセットやビジネスエンティティを生成する - 私は他のアプローチのカップルを追加してみましょう。

  1. を使用すると、XMLタイプをサポートしているデータベースを使用する場合のようにOracleまたはMS SQL Serverを使用すると、SQLクエリでXMLを正しく構築し、データセットの集まりを迂回してデータベースから直接XMLを取得できます。
  2. データベーススキーマが指定されたXSDに直接マッピングされていない場合(つまり、型付きデータセットまたは一連のXML直列化可能ビジネスオブジェクトがあり、それらのオブジェクトがXSDに準拠しないXMLにシリアル化されている場合)提供されている場合、XSLTを使用して、指定されたXSDに準拠する別のXML文書にXMLを変換できます。
3

ビジュアルスタジオに含まれているコマンドラインxsd.exeプログラムのパラメータとしてスキーマドキュメントを使用して、プロジェクト/ソリューションに含めることができるクラスファイルまたは型付きデータセットを生成します。これらのクラスまたはデータセットはxmlにシリアル化され、それらを作成するために使用したスキーマ文書に準拠します。

これは唯一の問題は動的ではないことです。実行時までスキーマファイルを取得することはできません。しかし、これをサポートしているものはありません。ジョエルCoehoornによって提案された解決策に加えて

関連する問題