C#を使用して、リソースファイルを逆引き参照する必要があります。私は、ResourceManagerクラスを使用して文字列値を取得する方法を知っていますが、私は今逆にしたいです。まずリソースファイルをxmlファイルにロードする必要がありますか?リソースファイルの逆引き?
私がこれをやりたい理由は、英語で書かれたハードコーディングされた列挙体があり、私のリソースファイルに英語からスペイン語のキーと値が含まれているからです。私のコードがWorkflowSupport.Completed enumを探しているのにワークフローが "Completed"ではなく "Terminado"を返すと失敗します。私は特にやろうとしています何
は次のとおりです。
私はワークフローがであるステップを返すのSharePointワークフローを持って、私はこのワークフローをローカライズされたので、代わりにそれは「Terminado」を返します「完了」返すのでてきました。 。ワークフローのさまざまな状態(Completed、Cancelled、Reassigned、Terminated、Processing)に一致する5つのハードコーディングされた値を持つ列挙型があります。ワークフローは「完了」ではなく「Terminado」を返すため、コードでは「Terminado」を列挙値のいずれかに一致させることはできず、失敗します。私は私のリソースファイルで逆引き参照したいので、 "Terminado"のような値を得たら、 "Completed"を返し、それを列挙メンバ "Completed"に合致させることができます。
これを行うには良い方法があれば、私はすべての耳をしています:)
enum名とローカライズ可能な文字列値を比較していますか? – digEmAll
はい、列挙型で.ToString()メソッドを使用します。しかし、ローカライズされた文字列はスペイン語になり、列挙は英語で行われるので失敗します –
しかし、なぜあなたはこれをやっていますか? enumの値を "COMPLETED"と呼び、EN: "Completed"、esp: "Terminado"という2つの値でリソースキーを "COMPLETED"することはできません。したがって、文化に依存しないキー "COMPLETED"によってリソースにアクセスできますか? – digEmAll