1

nhiberate でデータベースにアクセスするカスタム属性があります。この属性は実際には Castle の AbstractValidationAttribute から継承され、正規表現に対してプロパティを検証するために使用されます。問題は、これらの正規表現が cms で管理され、データベースに格納されていることです。データベースの値を変更しても、属性に反映されません。基本的に、属性は初期化されるだけなので、データベースから一度ロードされます。これを回避する方法はありますか?

ありがとう、ロビン

4

2 に答える 2

0

通常、属性は何もしません。それらはマーカーです。他のコードは、属性で使用されるデータに基づいて何らかの操作を実行するためにそれらを使用する必要があります。

于 2010-08-25T10:20:50.517 に答える
0

私の本では、属性にデータベース操作を実行させるのは少し奇妙に感じます。つまり、属性オブジェクトはインスタンスを呼び出すたびにインスタンス化されるGetCustomAttributesため、属性がその構築の一部としてデータを取得する場合、そのメソッドを使用して属性が検査されるたびにそれを取得する必要があります。

于 2010-08-25T10:14:36.340 に答える