Console.WriteLine
CodeDom を使用してステートメント (以下を参照) を作成しようとしています。これは主にEnvironment.NewLine
呼び出しのために私に与えています.Console.WriteLine呼び出し内にメソッドを埋め込む適切な方法がわかりません. 私が作成しようとしているコードと、使用しているコードを紹介します。おそらく誰かが私のエラーをキャッチして修正できるでしょう。
作成したいコード:
Console.WriteLine("Error reading from source: " + Environment.NewLine + "Error code: " + ex.Message);
私が使用しているコード:
const char quote = '\u0022'; // Represents a " mark
CodeMethodInvokeExpression invoke = new CodeMethodInvokeExpression(
new CodeTypeReferenceExpression("Console"), "WriteLine",
new CodeExpression[] {
new CodeVariableReferenceExpression(quote + "Error reading from source: " + quote + " + "),
new CodeFieldReferenceExpression("Environment"), "NewLine"),
new CodeVariableReferenceExpression("+ " + quote + "Error code: " + quote + " + " + "ex" + ".Message")})));
生成されるコード:
Console.WriteLine("Error reading source: " + , Environment.NewLine, + "Error code: " + ex.Message);
私は を使用しているためMethodInvoke
、CodeDom は各行を「,」で区切っており、あたかもそれらが同じメソッド内のそれぞれの新しいパラメーターであるかのようです...どうすればこれを適切に行うことができますか?