Web服务中的异常处理

时间:2020-11-13 15:55:35 Web Services 我要投稿

Web服务中的异常处理

  既然我们已经了解了AddCategories方法,现在就让我们来看看AddCategories方法所用到的助手方法。首先,我们看看ValidateXml方法。像前面所提到的那样,该方法负责确保被添加的'CategoriesXML数据遵从Categories.xsd中所预先定义好的XML模式。

  privateboolValidateXml(stringxml)

  boolvalidXml=false;

  //LoadtheXMLdataintomemory

  XmlValidatingReadervalReader=new

  XmlValidatingReader(xml,XmlNodeType.Document,null);

  valReader.Schemas.Add(null,Server.MapPath("Categories.xsd"));

  valReader.ValidationType=ValidationType.Schema;

  valReader.ValidationEventHandler+=new

  ValidationEventHandler(ValidationHandler);

  //LoopthroughtheXMLfile

  while(valReader.Read())

  if(builder.Length>0)

  validXml=false;

  else

  validXml=true;

  valReader.Close();

  returnvalidXml;

  以上代码首先把被添加的XML数据传递给构造函数,创建一个XmlValidatingReader类实例。然后,把Categories.xsd添加到XmlValidatingReader对象的Schemas集合中。接着,设置ValidationType为ValidationType.Schema,表明我们是在根据XML模式来验证XML数据。当你在使用XmlValidatingReader类验证XML数据时,你必须创建一个事件处理对象,并把它与ValidationEventHandler事件相关联。一旦做完这些后,校验错误和警告就通过这个回调事件处理对象被报告出来。ValidationEventHandler具有一个ValidationEventArgs类型的参数。ValidationEventArgs类提供两个重要属性,Message和Serverity。这两个属性提供更多的有关于校验错误的信息。

  在这种情况下,我们把ValidationEventHandler事件与ValidationHandler方法相关联。在这个方法中,我们附加错误信息到StringBuilder对象中,而该StringBuilder对象定义在模块中。如果没有任何校验错误,那么StringBuilder对象的Length属性将返回0。我们就是使用这个来检查XML模式校验是否失败。

【Web服务中的异常处理】相关文章:

1.响应式web中的表格处理

2.javascript编程异常处理的方法

3.PHP5异常处理的方法

4.SOAP Web服务介绍

5.安装Web服务器

6.关于Java编程的异常处理特殊情况

7.J2EE项目中的异常处理

8.关于网格与Web服务的结合