결국 XML 노드에 저장되는 TextBox가 있습니다. SecurityElement.Escape (string2Escape)을 사용하여 xml을 저장하기 전에 유효하지 않은 문자를 이스케이프 처리합니다.SecurityElement.IsValidText는 "&"...에 대해 true를 반환합니다 ... 이유가 무엇입니까?
문제점 : 이스케이프 메소드를 실행해야하는지 테스트하기 위해 IsValidText를 사용했지만 실제로는 '' '와'& '을 반환하지만 유효한 경우 xml 시스템 barfs를 저장하면 사실 , 유효하지. '<'또는 '>'에만 false를 반환하는 것으로 보입니다.
간단한 해결책, 수표를 제거하십시오,하지만 제 질문은 왜 이런 경우입니까?
private string EscapeXML(string nodeText)
{
if (!SecurityElement.IsValidText(nodeText))
{
return SecurityElement.Escape(nodeText);
}
return nodeText;
}