2

同じ構造でデータが異なる6つのテーブルがあります。各テーブルには、100 万件前後のレコードが格納されています。

パフォーマンス上の理由から、各テーブルに 1 年だけ入れています。だから私はこのDocument_2005、Document_2006、eccのようなテーブルを持っています...私は新年をインポートする手順を実行したところ、すべて正常に動作しますが、aspxGridView (DevExpress)は非常に遅いです。

そのため、ServerMode を有効にする必要があり、効果的にパフォーマンスははるかに優れていますがString.Format("Document_{0}",year);、ServerMode には LINQ TO SQL クラスが必要なため、SQL を使用して適切なテーブルにアクセスすることはできません。

今、私はすべてのクラスを dbml ファイル内に配置し、すべて正常に動作しますが、次の年に手動で追加して毎年再構築する必要がある新しいテーブル (同じ構造を持つ) をどのようにマップできますか? 自動生成されたクラスでソース テーブル名を変更しようとしましたが、TableAttribute を別のテーブル名に変更して再構築すると、すべて正常に動作します。

毎回プロジェクトを再構築せずに同じ結果を得るにはどうすればよいですか?

TypeDescriptor.AddAttributes を使用して、生成されたクラスの TableAttribute を変更しようとしましたが、機能しません。リフレクションを考えていますが、この場合、リフレクションは何もできないようです...

4

1 に答える 1