Нижеуказанный XElement
преобразует специальный символ «&» в «&
».Xelement, преобразующий специальные символы в строки
XElement newElement = new XElement("testting", "wow&testvalue");
Я хочу, чтобы это было "&" не &
.
Нижеуказанный XElement
преобразует специальный символ «&» в «&
».Xelement, преобразующий специальные символы в строки
XElement newElement = new XElement("testting", "wow&testvalue");
Я хочу, чтобы это было "&" не &
.
Я хочу, чтобы это было «&», а не &.
Тогда это будет недействительным XML. Почему вы хотите использовать недействительный XML?
LINQ to XML выражает текст, который вы запросили, в действительном XML. Это то, что он должен делать. Если вы попросите текст элемента позже (через этот или любой другой достойный XML API), вы вернетесь wow&testvalue
.
Как говорит Тим, вы могли использовать секцию CDATA:
var element = new XElement("testing", new XCData("wow&testvalue"));
Но вы не можете сказать, LINQ к XML не избежать того, что ему нужно бежать ...
Фактически мы сохраняем «wow & testvalue» в базе данных. Когда я попробовал вышеуказанное выражение, оно сохраняется как «[CDATA [wow & testvalue]]». Я хочу сохранить «wow & testvalue». Как я могу это заменить? – user2392525
@ user2392525: Ну, тогда вы не сохраняете XML - или не должны быть. Похоже, вы должны предоставить * много * больше информации в вопросе; Я дал лучший ответ, который я могу, основываясь на очень ограниченном контексте, который вы предоставили. –
'' & является особым символом в XML. Вам нужно обернуть текст в блок CDATA, чтобы сохранить его как '&' - ''. – Tim
для '&' преобразования в "amp". аналогично для '<,>' к символам "lt" и "gt" – user2392525
Я согласен с @Tim. '' работает большую часть времени. –