2012-01-25 11 views
5

कैसे के लिएAsp.Net MVC में DisplayFormat विशेषता के लिए कस्टम त्रुटि संदेश कैसे दिखाएं?

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:d}")] 

अपने मॉडल में कोड पीछा कर रहा है एक कस्टम त्रुटि संदेश को दिखाने के लिए,

[Display(Name = "When was that document issued?")] 
[DataType(DataType.Date, ErrorMessageResourceName = "DocumentIssueDate_DataType",ErrorMessageResourceType = typeof(CustomErrorMessages))] 
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:d}")] 
public DateTime? DocumentIssueDate { get; set; } 

मेरे विचार में जब मैं तारीख पाठ बॉक्स मैं निम्न त्रुटि संदेश मिलता है में 201 दर्ज करें। मैं नीचे दिए गए त्रुटि संदेश को कैसे संशोधित करूं?

मूल्य '201' DocumentIssueDate के लिए मान्य नहीं है।

+1

आप 'DocumentIssueDate_DataType' के लिए क्या है, तो कर सकते हैं? – Eranga

+0

संसाधन फ़ाइल (.resx) में एक स्ट्रिंग संदेश। उदाहरण के लिए "दिनांक डीडी/एमएम/yyyy (उदाहरण के लिए 31/01/1997) के रूप में दर्ज किया जाना चाहिए।" –

उत्तर

0

जवाब देख कोशिश Here. मुझे लगता है कि तैयार किया गया DisplayFormat नहीं सत्यापन के लिए, यही वजह है कि आप यदि प्रवेश किया स्ट्रिंग मान्य है की जाँच करने के लिए इसका इस्तेमाल नहीं कर सकते।

2

बहुत सारे शोध के बाद मुझे कोई भाग्य नहीं था। एकमात्र समाधान RegularExpression का उपयोग करना था।

उपयोग करने के बजाय

:

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:d}")] 

आप उपयोग कर सकते हैं:

[RegularExpression(@"^(3[01]|[12][0-9]|0[1-9])[-/](1[0-2]|0[1-9])[-/][0-9]{4}$", ErrorMessageResourceName = "Date Not Valid")] 

RegularExpression दिनांक स्वरूप dd/MM/yyyy मेल खाता है।

नियमित अभी भी हाँ परीक्षण नहीं लेकिन आप खोज और संपादित की जरूरत

संबंधित मुद्दे