Tôi đang chạy string.Format
trên chuỗi chỉ đọc có chứa một chút HTML + javascript nhưng thay vào đó tôi nhận được System.FormatException
.string.Format ném ngoại lệ System.Format trên HTML + javascript
Đây là chuỗi định dạng của tôi:
<script type="text/javascript">
function {0}_showHideFieldWindow() {
if ({0}.IsCustomizationWindowVisible()) {
{0}.HideCustomizationWindow();
} else {
{0}.ShowCustomizationWindow();
}
}
</script>
Tất cả tôi đang làm là đi qua trong tên đối tượng. Như thế này:
string.Format(javascript, "grid");
Chỉ vì tò mò, không phải là ký tự thoát chuẩn trong C# một dấu gạch chéo ngược (\\)? Nghĩa là, các dấu ngoặc nhọn không được thoát bằng "\ {\}" thay vì "{{}}"? Tôi hiểu rằng đôi niềng răng hoạt động, nhưng nó là thực hành tốt nhất? –
Vì anh ta sử dụng ký hiệu @ trước chuỗi, dấu gạch chéo ngược sẽ được hiểu theo nghĩa đen là dấu gạch chéo ngược nên không có gì thoát được –
John là chính xác - vì đó là chuỗi nguyên văn có một số lần thoát mà bạn có thể làm và tất cả chúng liên quan đến tăng gấp đôi ký tự (tức là {trở thành {{, "trở thành" ", v.v.) –