Валидация. Организация валиданости в формах Часть 1
Все примеры в моем блоге использует инструмент Visual Studio 2010. Так сказать от простого к сложному и наоборот. Некоторые посты я стараюсь делать как Cookbook from SharePoint 2010.
И буду очень рад комментариям и предложениям.
И так рассмотрим валидацию и как я ее организовал на newform.aspx
Небольшой исходник:
public class HRRegularExpressionValidator : CustomValidator
{
public string Expression { get; set; }
public RegularExpressionValidator()
{
this.ServerValidate += new System.Web.UI.WebControls.ServerValidateEventHandler(HRRegularExpressionValidator_ServerValidate);
}
void RegularExpressionValidator_ServerValidate(object source, System.Web.UI.WebControls.ServerValidateEventArgs args)
{
args.IsValid = Check();
}
private bool Check()
{
string value = this.Field.Value == null ? null : this.Field.Value.ToString();
if (!string.IsNullOrEmpty(Expression) && !string.IsNullOrEmpty(value))
{
System.Text.RegularExpressions.Regex expr = new System.Text.RegularExpressions.Regex(Expression);
if (!expr.IsMatch(value))
{
return false;
}
}
return true;
}
}
На вход передаем из UI:
<
<
</
Вывод: Реализацию можно делать разную, главное выбрать направление. Можно просто, а можно немного сложнее.Field Name="Title" >Validator Type="RegularExpressionValidator" Expression="^[\W\s\dа-яА-Яa-zA-z]{1,14}$" ErrorMessage="Название превышает 14 символов"></Validator>Field>
И буду очень рад комментариям и предложениям.
И так рассмотрим валидацию и как я ее организовал на newform.aspx
Небольшой исходник:
public class HRRegularExpressionValidator : CustomValidator
{
public string Expression { get; set; }
public RegularExpressionValidator()
{
this.ServerValidate += new System.Web.UI.WebControls.ServerValidateEventHandler(HRRegularExpressionValidator_ServerValidate);
}
void RegularExpressionValidator_ServerValidate(object source, System.Web.UI.WebControls.ServerValidateEventArgs args)
{
args.IsValid = Check();
}
private bool Check()
{
string value = this.Field.Value == null ? null : this.Field.Value.ToString();
if (!string.IsNullOrEmpty(Expression) && !string.IsNullOrEmpty(value))
{
System.Text.RegularExpressions.Regex expr = new System.Text.RegularExpressions.Regex(Expression);
if (!expr.IsMatch(value))
{
return false;
}
}
return true;
}
}
На вход передаем из UI:
<
<
</
Вывод: Реализацию можно делать разную, главное выбрать направление. Можно просто, а можно немного сложнее.Field Name="Title" >Validator Type="RegularExpressionValidator" Expression="^[\W\s\dа-яА-Яa-zA-z]{1,14}$" ErrorMessage="Название превышает 14 символов"></Validator>Field>
No matter what your degree of play, you’ll find one thing that’s right for you. And all of our slot machines incorporate state-of-the-art technology to maintain you repeatedly entertained. One of the biggest perks of contemporary on-line slot playing is the addition ofcasino bonuses. There are extensive range|a variety} of various bonuses which players can benefit of|benefit from|reap the advantages of} when playing in} slots on-line. If you’re hoping to stroll away with a very large win,progressive jackpotslots are greatest option|the best choice|your solely option}. Every so typically, a number of} fortunate players stroll away with life-changing sums of cash, with 1xbet many jackpots reaching the hundreds of thousands.
ОтветитьУдалить