0

プロパティとフィールドで満たされた C# クラスを保存しようとしています。そのクラスを SQL Server 2008 に保存するにはどうすればよいですか。

誰か助けてくれませんか??

4

2 に答える 2

5

さまざまな方法があり、そのオブジェクトをどのように元に戻したいかによって異なります。詳細な情報がなければ、あまり役に立ちません。

  1. Entity Framework を使用して、オブジェクトをデータベース テーブルにマップできます。各プロパティは、テーブルの列に対応します。
  2. オブジェクトをシリアル化し、データベース テーブルの 1 つの列に格納できます - xml、json、またはバイナリ blob としてシリアル化します。
于 2012-08-23T16:36:05.653 に答える
3

オブジェクトをスキーマとして表現する適切な方法: オブジェクトとそのオブジェクト グラフを表す 1 つ以上の関連テーブル: プロパティ、サブタイプ、および参照される型。これにより、格納されたオブジェクトを SQL データとしてクエリし、他の目的 (レポートなど) に使用できます。

または、オブジェクト インスタンスをシリアル化することもできます。[Serializable]属性を介して宣言的に行うことができます。インターフェイスを実装し、ISerializableそれをバイナリ、JSON、その他の選択した表現としてシリアル化することで、独自のものを作成できます。

XML シリアライゼーション属性を使用するか、または を実装することにより、XML との間でシリアライズできますIXmlSerializable

または、この種のものの組み込みサポートを無視して、独自の方法でシリアル化することもできます。

にシリアル化したら、シリアル化された方法に応じて、適切なタイプ (または)Streamの列にそれを格納できます。varbinary(max)varchar(max)

3 つ目のオプションは、CLR ユーザー定義型を作成し、そのアセンブリを SQL Server にインストールすることです。「ベストプラクティス」としてそれを提案するかどうかはわかりません

于 2012-08-23T16:44:21.117 に答える