WEB开发网
开发学院WEB开发ASP.NET ASP.NET - 如何:以编程方式测试 ASP.NET 服务器控... 阅读

ASP.NET - 如何:以编程方式测试 ASP.NET 服务器控件的有效性

 2009-12-18 16:51:53 来源:WEB开发网   
核心提示:验证控件测试用户输入,设置错误状态,ASP.NET - 如何:以编程方式测试 ASP.NET 服务器控件的有效性,并生成错误信息,它们不会更改页的处理流程,则必须首先手动调用 Validate 方法, 下面的代码示例演示如何获取单个验证控件的状态,例如,在检测到用户输入错误时不会略过代码
验证控件测试用户输入,设置错误状态,并生成错误信息。它们不会更改页的处理流程,例如,在检测到用户输入错误时不会略过代码。取而代之的是,您将在执行应用程序的特定逻辑之前在代码中测试控件的状态。如果检测到错误,您自己的代码将无法运行;页将继续处理并返回给用户,并向其显示错误信息。

安全说明: 默认情况下,asp.net 网页自动验证是否有恶意用户试图向您的应用程序发送脚本或 HTML 元素。

您可以测试常规的页范围的状态,并且可以测试单独控件的状态。通常,您在为页创建的事件处理程序中完成上述工作。



一、测试常规错误状态

   在您的代码中,测试页的 IsValid 属性。此属性将累计页上所有验证控件的 IsValid 属性的值(使用逻辑 AND),如果有任何验证控件设置为无效,页的属性都将返回 false。

说明: 验证信息在页的初始化或加载阶段不可用。但是,您可以在 Page_Load 期间手动调用 Validate 方法,然后测试页的 IsValid 属性。

下面的代码示例演示按钮的事件处理程序。该代码测试页的 IsValid 属性。请注意,在此无需其他子句,原因是页将自动返回到浏览器,并且验证控件将显示其自己的错误信息。

void Button1_Click(object sender, System.EventArgs e)

{

  if (IsValid)

  {

    // Perform database updates or other logic here.

  }

}



二、测试单独控件的错误状态

依次通过页的 Validators 集合,该集合包含对于所有验证控件的引用。您可以随后检查每个验证控件的 IsValid 属性。

说明: 如果希望在 Page_Load 期间执行该检查,则必须首先手动调用 Validate 方法。



下面的代码示例演示如何获取单个验证控件的状态。

if (this.IsPostBack)

{

  this.Validate();

  if (!this.IsValid)

  {

    string msg = "";

    // Loop through all validation controls to see which

    // generated the errors.

    foreach (IValidator aValidator in this.Validators)

    {

      if (!aValidator.IsValid)

      {

        msg += "<br />" + aValidator.ErrorMessage;

      }

    }

    Label1.Text = msg;

  }

}





本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dodream/archive/2009/12/17/5024643.aspx

Tags:ASP NET 如何

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接