捕获XML项的无效字符
本文关键字:无效 字符 XML 捕获 | 更新日期: 2023-09-27 18:25:14
在一个删除员工的方法中:您键入要删除的员工的ID(请参阅下面的xml参考),它运行以下代码:
Console.Write("'r'nEnter the ID of the employee you wish to delete: ");
delId = Console.ReadLine();
try
{
XmlNode t;
t = xmldoc.SelectSingleNode("/employees/employee[@id=" + delId + "]");
如果我键入正确的ID,就会发生以下情况:
t.ParentNode.RemoveChild(t);
xmldoc.Save(filepath);
如果我键入任何字符,例如;'"`|而不是一个有效的ID,它返回一个异常,我应该用什么/怎么做来捕捉它并显示错误?
我目前在这种方法中遇到的问题是:
catch (NullReferenceException ex)
{
Console.ForegroundColor = pr.error;
Console.WriteLine("'r'nError: " + ex.Message + "'r'n(that employee might not exist?)'r'n");
pr.run(); // Restart
}
XML:
<employees>
<employee name="Alastair Wilkins" id="1" />
<employee name="Test Person" id="12345" />
</employees>
MSDN关于SelectSingleNode 的文章
SelectSingleNode引发XPathException。它可以帮助您验证这些字符;'"`|