SIGN UP MEMBER LOGIN:    
ARTICLE

Introduction to Enterprise Library: Part VI

Posted by Sateesh Arveti Articles | Coding Best Practices February 06, 2009
This article explains about Validation Application Block Adapter for ASP.NET.
Reader Level:
Download Files:
 

In previous article, we had discussed about validation through Custom code. Now, we will look into the adapters provided by the VAB. VAB is having adapters for ASP.NET, Win Forms and WCF technologies. In this article, we will start with ASP.NET adapter.

Create a new ASP.NET Web application in VS 2008 and name it as ASPAdapterVAB. Now add the following dlls present in Enterprise Library installation folder:

  • Microsoft.Practices.EnterpriseLibrary.Common,
  • Microsoft.Practices.EnterpriseLibrary.Validation.Validators and
  • Microsoft.Practices.EnterpriseLibrary.Validation.Integration.AspNet

Now, add a class Employee to default.aspx as shown below:

Create a UI on default page as shown below:


  
We have few labels, textboxes and PropertyProxyValidators [present in Microsoft.Practices.EnterpriseLibrary.Validation.Integration.AspNet dll] on the page.
We can add this dll to ToolBox, go to Tool Box Choose Items Select Microsoft.Practices.EnterpriseLibrary.Validation.Integration.AspNet.dll Check PropertyProxyValidator Drag & Drop it onto the page.

We need to set following properties for each Validator:

Text Validation Message that need to be displayed.
ControlToValidate ID of the control to validate.
PropertyName Property Name for doing validations.
RuleSetName Name of the Rule set.
SourceTypeName Complete path of the class [Namespace.ClassName].
SpecificationSource Both [default option]. We can set this to either Attributes or Configuration based on the location of validation code.

Now, add the code to click event of Save button as shown below:

 

Here, Validate method will do the validations and sets IsValid property based on it. Later, we are displaying the error messages coming from validators present in Employee class if chkDetails is checked. If chkDetails is not checked, than we are displaying error message present in Text property of each Validator.

Now, run the application. The output will be like this:

I will just outline the steps in using this VAB adapter for ASP.NET.

  1. Create validation code using either attributes or configuration.
  2. Import VAB adapter for ASP.NET into client application.
  3. Create PropertyProxyValidator and set attributes discussed above.
  4. Run Validate methods of the validators.
  5. Check IsValid property for each validator and display error message.

Sometimes, we might input invalid data like entering non-numeric values for salary. In order to handle that, PropertyProxyValidator is having ValueConvert event. Now, we handle invalid salary using EmpSalaryValidator as shown below:

If the data is invalid, it will display an error message and set ConvertedValue to null.

I am ending the things here. I am attaching source code for reference. In coming articles, we will go deep into this Application block. I hope this article will be helpful for all. 

Login to add your contents and source code to this article
share this article :
post comment
 

Hello,

I am curious if you know how to go about setting the SourceTypeName if your SpecificationSource is a configuration file? Thanks.

Posted by A D Jan 28, 2010
Become a Sponsor
PREMIUM SPONSORS
  • Finally – a virtual platform that delivers next-generation Windows Server 2008 Hyper-V virtualization technology from a managed hosting partner you can truly depend on. Visit www.maximumasp.com/max for a FREE 30 day trial. Hurry offer ends soon. Climb aboard the MaxV platform and take advantage of High Availability, Intelligent Monitoring, Recurrent Backups, and Scalability – with no hassle or hidden fees. As a managed hosting partner focused solely on Microsoft technologies since 2000, MaximumASP is uniquely qualified to provide the superior support that our business is built on. Unparalleled expertise with Microsoft technologies lead to working directly with Microsoft as first to offer IIS 7 and SQL 2008 betas in a hosted environment; partnering in the Go Live Program for Hyper-V; and product co-launches built on WS 2008 with Hyper-V technology.
    The leading .NET charting control now features PDF, Flash and Silverlight export, visualization of large datasets and more. Deliver true charting functionality to your BI, Scorecard, Presentation or Scientific apps. Download evaluation now.
Team Foundation Server Hosting
Become a Sponsor