2012-05-18 38 views
9

Làm cách nào để viết xác nhận bằng chú thích dữ liệu bằng cách viết số điện thoại như "094-4567" hoặc số di động như "09129705678" vv?Chú thích dữ liệu ASP.NET MVC 3 cho số điện thoại di động và số điện thoại (Đã chỉnh sửa)

using System.Web; 
using System.Data.Entity; 
using System.ComponentModel.DataAnnotations; 

namespace PhoneBook.Models 
{ 
    public class Contact 
    { 
     [Required(ErrorMessage="Telephone Number Required") 
     [?] 
     public string Telephone Number {get; set;} 
    } 
} 

Tôi thật sự không biết phải làm gì ...

+0

Bạn chỉ chấp nhận số điện thoại Mỹ? Bạn có cho phép các tiện ích mở rộng như 123-456-7890 x1234 không? Điều gì về một người nào đó ở Mỹ sử dụng một điện thoại di động mexican và họ nhập số bạn sẽ quay số để đạt được nó từ Mỹ như 52-1-625-1140504? – nvuono

Trả lời

35

Bạn có thể sử dụng biểu thức chính quy thuộc tính như sau:

namespace PhoneBook.Models 
{ 
    public class Contact 
    { 
     [Required(ErrorMessage="Telephone Number Required") 
     [RegularExpression(@"^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$", ErrorMessage = "Entered phone format is not valid.")] 
     public string Telephone Number {get; set;} 
    } 
} 

Nó sẽ phù hợp với con số như: , 012- 345-6789, (012) -345-6789 v.v.

Bạn có thể tìm hiểu thêm về biểu thức này tại đây: How to use Regular expression for validating Phone Numbers

+1

Sử dụng @ "^ \ (? ([0-9] {3}) \)? [-.]? ([0-9] {3}) [-.]? ([0-9] {4}). * $ "thay vào đó để cho phép tiện ích mở rộng được kết thúc. –

-3
namespace PhoneBook.Models 
{ 
    public class Contact 
    { 
     [Required(ErrorMessage="Telephone Number Required") 
     [RegularExpression(@"^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$", ErrorMessage = "Entered phone format is not valid.")] 
     public string Telephone Number {get; set;} 
    } 
} 
2

Hãy thử điều này:

[DataType(DataType.PhoneNumber, ErrorMessage = "Provided phone number not valid")] 
0
Try for simple regular expression for Mobile No 

    [Required (ErrorMessage="Required")] 
    [RegularExpression(@"^(\d{10})$", ErrorMessage = "Wrong mobile")] 
    public string Mobile { get; set; } 
Các vấn đề liên quan