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.
- Create validation code using either attributes or configuration.
- Import VAB adapter for ASP.NET into client application.
- Create PropertyProxyValidator and set attributes discussed above.
- Run Validate methods of the validators.
- 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.