长话短说,我试图从JsonConvert.SerializeObject的输出进行清理,而不必修改已保存数据的内容。
我正在开发在视图中具有以下标记的应用程序:
<textarea data-bind="value: aboutMe"></textarea>
Run Code Online (Sandbox Code Playgroud)
如果保存以下文本,则会遇到问题:
<script type="text/javascript">alert("hey")</script>
Run Code Online (Sandbox Code Playgroud)
我在FF中得到的错误:

违规渲染文本的相关部分:
$(document).ready(ko.applyBindings(new MyProfileVm({“ profileUsername”:“ admin”,“ username”:“ Admin”,“ aboutMe”:“ alert(\” hey \“)”,“ title”: “这是一个简短的自我简介!:)”,“缩略图”:“ https://i.imgur.com/H1HYxU9.jpg ”,“ locationZip”:“ 22182”,“ locationName”:“维也纳,弗吉尼亚州”
最后-在我的观点的底部:
<script type="text/javascript">
$(document).ready(ko.applyBindings(new MyProfileVm(@Html.Raw(JsonConvert.SerializeObject(Model, new JsonSerializerSettings() { ContractResolver = new CamelCasePropertyNamesContractResolver() })))));
</script>
Run Code Online (Sandbox Code Playgroud)
在这里,我将从MVC控制器获得的模型传递给js ViewModel,以进行剔除,以映射到可观察的数据中。Raw编码似乎是问题所在,但我不确定该如何处理。
明确地说,我正在从服务器获取数据,并将其输出到客户端,这将构成JSON / KO组合。