C# 字符串。格式异常输入字符串的格式不正确

C# 字符串。格式异常输入字符串的格式不正确,c#,.net,string,string-formatting,resourcedictionary,C#,.net,String,String Formatting,Resourcedictionary,我从string.Format(…)操作中收到以下错误: System.FormatException-输入字符串的格式不正确 我有一个资源字典,其中包含一个带有基本html页面的条目 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Title of the document</title> <style>

我从
string.Format(…)
操作中收到以下错误:

System.FormatException-输入字符串的格式不正确

我有一个资源字典,其中包含一个带有基本html页面的条目

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Title of the document</title>

    <style>
        * { 
            margin: 0; 
            padding: 0; 
        }

        body { 
            font-family: 'Arial, Verdana', Fallback, sans-serif; 
            font-size: 14px;
        }

        table { 
            background-color: #eeeeee; 
            width: 100%; 
            padding: 10px;
            margin: 5px;
        }

        h1 {
            font-size: 16px;
            font-weight: bold;
            margin: 20px 0 10px 0;
        }
    </style>
</head>

<body>
    text<br />

    <table>
        <tr>
            <td>Text 1</td>
            <td>{0}</td>
        </tr>
        <tr>
            <td>Text 2</td>
            <td>{1}</td>
        </tr>
        <tr>
            <td>Text 3</td>
            <td>{2}</td>
        </tr>
        <tr>
            <td>Text 4</td>
            <td>{3}</td>
        </tr>
        <tr>
            <td>Text 5</td>
            <td>{4}</td>
        </tr>
        <tr>
            <td>Text 6</td>
            <td>{5}</td>
        </tr>
        <tr>
            <td>Text 7</td>
            <td>{6}</td>
        </tr>
    </table>
    <br />

    <h1>Header1</h1>

    <table>
        <tr>
            <td><a href="http://www.google.com">http://www.google.com</a></td>
        </tr>
        <tr>
            <td>Text 8: {7}</td>
        </tr>
    </table>
    <br />
</body>
有人知道我犯了什么错误吗?
难道不能像这样在资源字典中填充占位符吗?

您有很多大括号不是格式说明符,例如:

    { 
        margin: 0; 
        padding: 0; 
    }
或者您需要复制它们:

    {{
        margin: 0; 
        padding: 0; 
    }}

或者使用不同的格式化方法(如模板引擎)。

我认为您不应该对整个模板进行HTML编码。。如果需要对单个text1、text2等值进行编码(在本例中,它们都需要进行编码),那么您应该只对它们进行编码。如果我是一个投注者,那些未被替换的
{
}
(在您的CSS定义中)就是原因。格式输入中的大括号必须转义(
{
=>
{{
}
}=>
}
)。
    {{
        margin: 0; 
        padding: 0; 
    }}