string.Format 异常输入字符串的格式不正确

string.Format exception Input string was not in a correct format

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

System.FormatException - Input string was not in a correct format.

我有一个资源字典,其中包含一个带有基本 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>

string.Format(...) 操作如下所示:

var emailHtml = string.Format(
                    WebUtility.HtmlEncode(EmailResource.EmailTemplate),
                    "text1",
                    "text2",
                    "text3",
                    "text4",
                    "text5",
                    "text6",
                    "text7",
                    "text8");

有人知道我犯了什么错误吗? 这样填资源字典的占位符不就可以了吗?

你有很多不是格式说明符的花括号,例如:

    { 
        margin: 0; 
        padding: 0; 
    }

要么你需要复制它们:

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

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