C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■87071 / )  Re[3]: XMLスキーマの使い方について
□投稿者/ 魔界の仮面弁士 (1635回)-(2018/04/10(Tue) 15:03:17)
No87065 (MTK さん) に返信
> メモリ上にデータベースを作ることができるようなもの?なんですかね。
狭義のデータベースとはちょっと異なりますが、概ねそんな感じです。

データベースを模した形のデータの入れ物というだけなので、
データベースと無関係なデータを蓄えることも出来ます。


> XML Schemaを使っているということは、データベースの制約などが書かれているのかなと想像しています。

正確には『データベースの制約』ではなく、『DataSet 自身の制約』情報ですね。

たとえば、データベース側は数値型の列だけど、DataSet は文字列型の列として、
管理させている場合もあります。また、列のデータ型なども、
データベースにとっての型ではなく、.NET にとっての型で管理されます。


【参考情報】
.NET の System.DateTime 型の範囲は 0001/01/01 00:00:00.0000000〜9999/12/31 23:59:59.9999999
SQL Server の datetime 型の範囲は 1753/01/01 00:00:00.000〜9999/12/31 23:59:59.997
Oracle の DATE 型の範囲は -4712/01/01 00:00:00〜9999/12/31 23:59:59
Access の DATE 型の範囲は 0100/01/01 00:00:00〜9999/12/31 23:59:59


> もし今使うならこれがいい など個人的な意見で結構ですので、オススメがあれば教えて頂けないでしょうか。
求められている XML 構造を見ないと判断しずらいところもあるのですが:

時には、スキーマに沿った形のクラスを設計して、
XMLSerializer あるいは SoapFormatter で変換することもあります。

とはいえ SOAP 通信が目的なら、Visual Studio で自動的にプロキシクラスを
生成できるので、WSDL が提供されている場合はそれをそのまま使うことが殆どです。
この場合、XML の存在を意識せずに済みます。

ただ、SOAP メッセージの内容によっては、自動的に生成されるプロキシクラスでは
対応できないこともあるので、その場合は自前で XML を構築したこともあります。

最近は SOAP ではなく、REST で構築されたサーバーが多いですね。


XML データを直接操作する場合については、個人的には
XDocument を使うことが多いです。(この方法で XML を扱う場合は
C# より VB の方が楽だったりしますが、C# でも大差はありません)
返信 編集キー/


管理者用

- Child Tree -