asp.net:如何进行数据验证?

时间:2011-08-17 22:05:51

标签: c# asp.net sql-server

我正在使用我的asp.net应用程序的用户将数据添加到sql server 2008数据库中。

插入数据的最佳方法是什么,并且能够验证空字段,整数与字符串之类的内容?

我目前正在使用formview插入数据。我如何验证用户输入?

2 个答案:

答案 0 :(得分:2)

使用验证jQuery插件进行前端验证。

这是我经常使用的那个。 http://bassistance.de/jquery-plugins/jquery-plugin-validation/

然后在c#中创建模型的部分类,并使用DataAnnotations进行更深入的验证。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel;

    namespace DataRepository
    {
        [MetadataType(typeof(Company_validation))]
        public partial class Company
        {
        }


        public class Company_validation
        {
            [Required]
            [DisplayName("Company name")]
            public string Name { get; set; }

            [Required]
            [DisplayName("Address")]
            public string AddressLine1 { get; set; }
            public string AddressLine2 { get; set; }

            [Required]
            public string Suburb { get; set; }

            [Required]
            public int Postcode { get; set; }

            [Required]
            public string State { get; set; }
        }

    }

所以从这里你可以做任何你需要的验证。

以下是我们在项目中使用过的两个RequiredFieldValidators示例。

RegularExpressions验证器是您要针对字符串vs int等检查或验证电话号码,邮政编码或电子邮件的验证器;

<asp:RequiredFieldValidator ID="reqValTxtAppRef" runat="server" ErrorMessage="Please enter your application reference number or <a href='ChooseYourHealthCover.aspx'>click here</a> to begin a new application <br/>"
ControlToValidate="txtAppRef" Display="Dynamic" ValidationGroup="vgRetrieveApp"
SetFocusOnError="true" CssClass="error" Font-Bold="true" cau EnableClientScript="False" />

<asp:RegularExpressionValidator ID="regexpValTxtAppRef" runat="server" ControlToValidate="txtAppRef" ErrorMessage="This is not a valid application reference number. Please enter it again or <a href='ChooseYourHealthCover.aspx'>click here</a> to begin a new application <br>" ValidationExpression="(HQ|HA|hq|ha)\d{8}" ValidationGroup="vgRetrieveApp" Display="Dynamic" CssClass="error" Font-Bold="true" EnableClientScript="False" />

答案 1 :(得分:1)

我首先对asp.net验证器感到满意......之后,有一些非常好用的jquery等等。

这里是一个了解概览的好地方,也可以看到它们的实际效果。它有一个沙箱区,你也可以测试它。 http://www.w3schools.com/aspnet/aspnet_refvalidationcontrols.asp