Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将内容读取为空XML元素的整数_C#_Xml_Xml Parsing - Fatal编程技术网

C# 将内容读取为空XML元素的整数

C# 将内容读取为空XML元素的整数,c#,xml,xml-parsing,C#,Xml,Xml Parsing,我在使用XMLReader在C#中解析XML时遇到了一个问题 以下是一个例子: string text = xNode.ReadElementContentAsString().Length > 0 ? xBonusesNode.ReadElementContentAsString() : null; int nmb = xNode.ReadElementContentAsInt(); 所以,在我试图获取字符串值的地方,有一个简单的内联if语句来检查元素是否有数据 如何使用integer

我在使用XMLReader在C#中解析XML时遇到了一个问题

以下是一个例子:

string text = xNode.ReadElementContentAsString().Length > 0 ? xBonusesNode.ReadElementContentAsString() : null;
int nmb = xNode.ReadElementContentAsInt();
所以,在我试图获取字符串值的地方,有一个简单的内联if语句来检查元素是否有数据

如何使用integer执行类似操作?或者如何以最佳方式正确捕获异常?

您可以这样使用:

  int number;
  bool result = Int32.TryParse(xNode.ReadElementContentAsString, out number);
应该有用


我不确定xml库是否支持空类型(int?),但上面的方法无论如何都应该有效——基本上我是将其作为字符串读取,然后尝试对其进行解析。如果TryParse失败,myInt将保持原来的状态(TryParse返回“false”)

感谢您的回答,但Stefan p.是第一个。
string text = xNode.ReadElementContentAsString().Length > 0 ? xBonusesNode.ReadElementContentAsString() : null;
Int32.TryParse(text,out myInt);