0

NHibernate には、この構成があります。

 <property name="Name" type="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a222222229">
      <column name="Name" />
    </property>

これらはどういう意味ですか?msconrlib、バージョン、カルチャ、publicKeyToken ? なぜこれらが必要なのですか?私はJava envでHibernateに取り組んできましたが、これらのタグは使用しません。

ありがとう

4

2 に答える 2

0

タイプは、そのプロパティに使用される.NetCLRタイプを記述します。この場合、通常の文字列です。

この場合、指定する必要はありません。カスタムタイプを使用している場合など、指定したい場合があります。または、DateTimeをマップする場合。

タイプの部分の意味について:タイプはSystem.Stringであり、アセンブリ名、カルチャ、およびバージョンに関して非常に正確に記述されています。publicKeyTokenは、アセンブリの厳密な名前のキーです。これにより、異なるキーで署名されている限り、アセンブリ名を複製できます。

このマッピングは次のように書くことができます

 <property name="Name">
      <column name="Name" />
 </property>

また

<property name="Name" type="String">
      <column name="Name" />
</property>

ただし、一部のアセンブリでカスタムタイプを使用する場合は、現在行っているように、より詳細かどうかを指定する必要があります。

于 2012-05-03T20:31:13.640 に答える
0

MS .Net では、Strong アセンブリ名と呼ばれます。.Net Framework で特定の型を識別する方法です。したがって、この特定の文字列は、バージョン 4.0 で mscorlib ライブラリの System.string を使用することを示しています。ローカリゼーションを優先しません。これにより、.Net は GAC (システム dll のグローバル ディレクトリとして機能するグローバル アセンブリ キャッシュ) に展開されたアセンブリを使用できます。

于 2012-05-03T21:54:30.633 に答える