3

エラーになる文字列の2つの部分を持つ文字列を作成しようとしています.....これが私のコードです

 StringBuilder str = new StringBuilder();          
            str.AppendFormat("{0}",GetAccessor(attr, rootTblName)).AppendLine();                
            str.Append("}").AppendLine();

            return str.ToString();


 private string GetAccessor(DataAttribute attr, string rootTblName)
        {
            return string.Format("get { return {0}.{1}; }", 
                GetRootPvtMember(rootTblName), 
                attr.MdlPart.InternalName
            );
        }

エラー:入力文字列の形式が無効です........GetAccessorの戻り文字列の「{」、「}」が原因でエラーが発生することを意味しますが、そのようにする必要があります。だから何か回避策があれば.....

4

2 に答える 2

9

{{Format で中括弧をエスケープするには、二重中括弧を使用します。

于 2013-02-20T10:37:55.140 に答える
6

{{と でそれらをエスケープします}}

それはうまくいくでしょう。

例えば:

string.Format("get {{ return {0}.{1}; }}", ....
于 2013-02-20T10:37:25.200 に答える