2016-08-11 4 views
-1

コンソールメッセージの色を変更できる設定をしようとしています。 は、ここで設定ここC#はJSONからConsoleColorを読み込みます。どのようにコードが見えますか?

"ErrorColor": "Red", 

色を変更する設定はありませんでした前です。

Console.ForegroundColor = color == ConsoleColor.Black ? ConsoleColor.Red : color; 

ここに私が追加しようとしているものがあります。

Console.ForegroundColor = color == ConsoleColor.Black ? ConsoleColor.(session.LogicSettings.ErrorColor) : color; 

私のコードはどのように見えますか?

+2

ようになります(http://stackoverflow.com/questions/38884786/how-can-i-make-this-work-c- sharp-reads-consolecolor-from-json)あなたの他の質問に記載されているように、あなたは答え[ここ]を見つけることができます(http://stackoverflow.com/questions/2290262/search-for-a-string-in-enum- and-return-enum)、これは基本的にマイクがあなたに下で与えたものです。 –

+0

私はどのように私のコードが – Mark

答えて

1

Parse/TryParseは通常、文字列から列挙型の値を取得する方法ですが、それを処理するjsonの逆シリアル化ではありません。 [あなたは再びこれを聞いてWhy'd?]とにかくそれはおそらく、この

ConsoleColor color; 
if (!Enum.TryParse(session.LogicSettings.ErrorColor, out color)) 
{ 
    // this is the fallback color in case an invalid value was entered. 
    color = ConsoleColor.Red; 
} 

Console.ForegroundColor = color; 
+0

のようになるのだろうと思っていた。Console.ForegroundColor = color == ConsoleColor.Black? ConsoleColor。(session.LogicSettings.ErrorColor):カラー;またはそれを交換する? – Mark

+0

@マークあなたはそれを守らないでしょう。それは有効なC#でさえありません。これは、TryParseを使用する方法のデモンストレーションであり、コピーして貼り付けるためのものではありません。 –

関連する問題