プレースホルダの膨大な負荷(約250)をプレーンテキストで解決する必要があります。プレースホルダをプレーンテキストで解決するベストプラクティスは何ですか?
プレースホルダは、例は%電子メールの送信%なり、ThisIsAPlaceholder%%として定義されます。
これで少しばかげています。コードは大文字と小文字を区別しないプレースホルダも処理する必要があります。したがって、%EmailSender%,%EMAILSENDER%および%emailsender%は同じプレースホルダです。私はそれが複雑になるところだと思う。あなたが気づくこととして、私はケースinsesitiveプレースホルダを扱うことができない
public string ResolvePlaceholders(string text)
{
var placeholders = new IEnumerable<string>
{
"%EmailSender%",
"%ErrorMessage%",
"%ActiveUser%"
};
var resolvedText = text;
foreach(var placeholder in placeholders)
{
if(!replacedText.Contains(placeholder))
continue;
var value = GetValueByPlaceholder(placeholder);
resolvedText = resolvedText.Replace(placeholder, value);
}
return resolvedText;
}
しかし..:
私の最初のアプローチは、のようなものでした。 また、すべてのプレースホルダ(テキストで使用されている場合)を確認します。私は約10,000語のテキストで> 200台のプラットホルダーを使用すると、この解決策はあまり速くないと思います。
どのようにこれをより良い方法で解決できますか?大文字と小文字を区別しないプレースホルダをサポートするソリューションが評価されます。
[文字列形式のカスタム文字列プレースホルダを提供する方法](http://stackoverflow.com/questions/1102300/how-to-provide-custom-string-placeholder-for-string-format) –