Spring.net Validator 使用步骤
来源:互联网 发布:动画制作简单软件 编辑:程序博客网 时间:2024/06/10 02:04
1. 配置验证文件:
例如: <v:group id="tripValidator">
<v:required id="departureAirportValidator" test="StartingFrom.AirportCode">
<v:message id="error.departureAirport.required" providers="departureAirportErrors, validationSummary"/>
</v:required>
<v:group id="destinationAirportValidator">
<v:required test="ReturningFrom.AirportCode">
<v:message id="error.destinationAirport.required" providers="destinationAirportErrors, validationSummary"/>
</v:required>
<v:condition test="ReturningFrom.AirportCode != StartingFrom.AirportCode" when="ReturningFrom.AirportCode != ''">
<v:message id="error.destinationAirport.sameAsDeparture" providers="destinationAirportErrors, validationSummary"/>
</v:condition>
</v:group>
<v:group id="departureDateValidator">
<v:required test="StartingFrom.Date">
<v:message id="error.departureDate.required" providers="departureDateErrors, validationSummary"/>
</v:required>
<v:condition test="StartingFrom.Date >= DateTime.Today" when="StartingFrom.Date != DateTime.MinValue">
<v:message id="error.departureDate.inThePast" providers="departureDateErrors, validationSummary"/>
</v:condition>
</v:group>
<v:group id="returnDateValidator" when="Mode == 'RoundTrip'">
<v:required test="ReturningFrom.Date">
<v:message id="error.returnDate.required" providers="returnDateErrors, validationSummary"/>
</v:required>
<v:condition test="ReturningFrom.Date >= StartingFrom.Date" when="ReturningFrom.Date != DateTime.MinValue">
<v:message id="error.returnDate.beforeDeparture" providers="returnDateErrors, validationSummary"/>
</v:condition>
</v:group>
</v:group>
关于验证文件配置的解释:
id="tripValidator" 这个是验证组,唯一引用标示符。
test="StartingFrom.AirportCode" 是验证表达式,可以是标准的spring.net 表达式,也可以是方法调用等。
<v:message id="error.departureAirport.required" providers="departureAirportErrors, validationSummary"/>
这个中的id 是错误引用标示,其中错误信息在资源文件中定义;
providers="departureAirportErrors, validationSummary"
中
providers属性用一个以逗号分隔的字符串来指定一个“错误桶”,这个“桶”可以用来保存特定的错误信息,并且用特定的显示机制在必要的时候将错误信息显示出来。
when="Mode == 'RoundTrip'"
这个是,当when指定的条件成立时才验证;
2. 将验证对象注入到需要验证的页面中,或者是制定的要验证的对象,
例如:
<object type="TripForm.aspx" parent="standardPage">
<property name="TripValidator" ref="tripValidator" />
</object>
3. 准备资源文件。
4. 在Ioc容器中引用相应的文件,做配置
如:<object id="cultureResolver" type="Spring.Globalization.Resolvers.SessionCultureResolver, Spring.Web" />
<object id="localizer" type="Spring.Globalization.Localizers.ResourceSetLocalizer, Spring.Core" />
<object id="messageSource" type="Spring.Context.Support.ResourceSetMessageSource, Spring.Core">
<property name="ResourceManagers">
<list>
<value>Resources.Strings, App_GlobalResources</value>
</list>
</property>
<property name="UseCodeAsDefaultMessage" value="true" />
</object>
<!-- Validation errors renderer configuration -->
<object id="Spring.Web.UI.Controls.ValidationError" abstract="true">
<property name="Renderer">
<object type="Spring.Web.UI.Validation.IconValidationErrorsRenderer, Spring.Web">
<property name="IconSrc" value="validation-error.gif"/>
</object>
</property>
</object>
<object id="Spring.Web.UI.Controls.ValidationSummary" abstract="true">
<property name="Renderer">
<object type="Spring.Web.UI.Validation.DivValidationErrorsRenderer, Spring.Web">
<property name="CssClass" value="validationError"/>
</object>
</property>
</object>
<!-- Base page definition. All other pages inherit these settings -->
<object id="standardPage" abstract="true">
<property name="MasterPageFile" value="~/Web/StandardTemplate.master"/>
<property name="CultureResolver" ref="cultureResolver"/>
<property name="Localizer" ref="localizer"/>
<property name="ScriptsRoot" value="~/Scripts" />
<property name="CssRoot" value="~/Web/CSS"/>
<property name="ImagesRoot" value="~/Web/Images"/>
</object>
5.在相信的后置代码文件中实现这样的事件形式
protected void SearchForFlights(object sender, EventArgs e)
{
if (Validate(trip, tripValidator))
{
FlightSuggestions suggestions = this.bookingAgent.SuggestFlights(Trip);
if (suggestions.HasOutboundFlights)
{
Session[Constants.SuggestedFlightsKey] = suggestions;
SetResult(DisplaySuggestedFlights);
}
}
}
6.定义相应的对象
private IValidator tripValidator;
public IValidator TripValidator
{
set { tripValidator = value; }
}
引用相应的命名空间
using ValidationSummary = Spring.Web.UI.Controls.ValidationSummary;
8.页面后置文件必须实现这个命名空间Spring.Web.UI.Page
9.在aspx页面中这样实现就ok了<spring:ValidationError id="departureAirportErrors" runat="server" />
- Spring.net Validator 使用步骤
- spring使用validator
- spring mvc 中使用spring的validator
- spring mvc 中使用spring的validator
- spring mvc 中使用spring的validator
- spring mvc 中使用spring的validator
- Hibernate validator使用和自定义validator及整合Spring MVC
- Hibernate validator使用和自定义validator及整合Spring MVC
- 使用Spring的Validator接口进行校验
- Spring Validation(使用Hibernate Validator)
- Spring Validation(使用Hibernate Validator)
- Spring中使用Validator进行数据验证
- Spring Validator
- Spring validator
- Spring validator
- Spring validator
- ASP.NET中Validator的使用
- Spring Validator和Hibernate Validator
- 读取TXT文件,循环显示本行数据
- 各种架构图汇总!
- C#取得指定路径下所有目录及文件名称(可递归)
- 关于图片不能查看的说明
- [日语二级词汇]日语二级必会汉字总结12
- Spring.net Validator 使用步骤
- 14 个经典的Java script 代码
- 年月日(无刷新)
- ubuntu9.04多系统无法启动问题解决
- AJAX Control 说明
- [日语二级语法]日语能力测试二级语法详解 1
- 用C++ TR1 生成随机数
- 深圳的实习生活(1)
- TabContainer+TabPanel