0

アプリケーションを実行しているユーザーに応じてラベルの値が異なる必要があるため、ユーザーの種類ごとに dll を作成し、その dll にラベルの値を保持するリソース ファイルを作成することを考えました。実行時に、指定されたディレクトリにある dll に応じて、dll で見つかったリソースを使用してラベル値を設定します。

1) Are multiple dll's necessary in this case?
2) If it is multiple dll's, is MEF or something similar necessary here or can it 
   be done without it?
4

1 に答える 1

0

提案された解決策は間違いなくオーバーキルです。展開のために dll をどのように交換するつもりですか? 各ユーザーがダウンロード/インストールするパッケージを制御できますか?

私の第一印象は、入力パラメーターに応じて異なる設定値を返す文字列プロパティを持つクラスを使用/維持する方がはるかに簡単だということです。

すなわち

public String FirstResourceEntry
{
    get
    {
        switch(userTypeEnum)
        { 
          case userType1:
               return "SetValue1";
               break;
          case: userType2:
                return "SetValue2";
                break;
    }
}

この方法は、値を変更する場合は再構築が必要になるため、アプリとの結合がもう少し緊密になりますが、同じアプリ/ファイル セットをすべての潜在的なユーザーに配布することもできます。

于 2012-10-12T20:28:26.397 に答える