2011-01-11 20 views
1

ASP.NET MVCプロジェクトのリストに対して、ユーザ設定可能なフィルタリングシステムを実装したいと思います。Cでユーザが設定可能な任意のリストフィルタリング

構成ユーザーは、リスト内のオブジェクトのプロパティのいずれかによってリストをフィルタ処理できる必要があります。さらに、静的クラスのプロパティなど、現在の実行スコープの値を比較で使用できるようにする必要があります。フィルタリングされるオブジェクトはすべて同じタイプです。

このシステムの目的は、セントラルカタログで提供される複数の「ホワイトラベル」の電子商取引サイトを有効にすることですが、サイトごとに利用できる製品のサブセットがわずかに異なります。

設定は、コードをデプロイするのではなく、管理インターフェイスを使用して行う必要があります。

解決方法私は考えています:

`` 1。私自身の基本的な構文を実装します。比較を表すテキストをデータベースに格納する。反射を使用して比較/フィルタリングを完了します。

問題:自分自身を圧倒したくない。テキストの誤りの可能性。

`2。ミニ '比較DLL'を実装し、Springなどを使用して注入します。

問題:アプリケーションがWebファームにあり、展開エラーの可能性があります。管理が難しくなります。管理インターフェースはありません。

理想的には、管理しやすい(情報をデータベースに保存する)、かなり安全です(ユーザーによるエラーの小さなマージン)が理想的です。

答えて

0

この問題で見つかった解決法はかなり議論の余地がありますが、うまくいきます。

私たちはデータベースにC#コードを格納し、それを必要に応じてラムダ関数にコンパイルし、結果のオブジェクトをキャッシングします(これはAppFabric Serverを使用しています)。

この関数を使用して、オブジェクトのリストをフィルタリングします。

私たちは、自分のフィルタを作成および編集するための管理インターフェイスを提供しています。管理インタフェースは、コードをデータベースに格納する前にコンパイルできることを確認します。

関連する問題