一个缺点是您需要手动转义特殊字符。因此,您需要编码像>、<和&这样的字符(请参阅HTML编码的维基百科文章)。这很容易做到,因为.NET库中已经包含了可以完成此任务的实用程序,例如HttpServerUtility.HtmlEncode,但是许多人会忘记这一点,并且不会测试所有特殊情况。另一个缺点是,如果您只是在一个任意HTML的div中填充一些内容,那么这意味着您可能正在手动构建HTML,如果您只是使用字符串连接或类似原始的东西,则可能会出错。如果您是在客户端执行此操作,则更好的方法是仅依赖于将元素附加到DOM中,而不是设置innerHTML。