2012-02-10 8 views
5

के साथ मॉडल सत्यापन वास्तव में एएसपी.नेट एमवीसी दृष्टिकोण के साथ उपयोग किया जाता है: संबंधित गुणों के साथ एनोटेट मॉडल, एमवीसी इसे मान्य करता है और मॉडलस्टेट.इरर्स अपडेट करता है, मॉडलस्टेट दृश्य पर उपलब्ध है, इसलिए त्रुटियों को दिखाना संभव है उपयोगकर्ता।नैन्सीएफएक्स

मुझे wiki पर जानकारी नहीं मिली है, यह नैन्सीएफएक्स के लिए वास्तव में कैसे किया जाना चाहिए। sources में मैं देख सकता हूं कि नैन्सी नियमों का उपयोग करने की कोशिश कर रहा है, लेकिन सही तरीके से आवेदन कैसे करें और दृश्यों पर विफलताओं को दिखाएं?

EDIT: प्रश्न @CCodeJunkie 0.10 के अनुसार नैन्सी 0.9 के लिए प्रासंगिक है, इसके लिए परिवर्तन लागू होंगे।

उत्तर

7

वर्तमान टैग की गई रिलीज (0.9) में हमारे पास मॉडल सत्यापन के लिए कोई अंतर्निहित समर्थन नहीं है। हालांकि लंबित (सबसे अधिक संभावना इस सप्ताहांत) 0.10 रिलीज के साथ हम मॉडल सत्यापन के लिए समर्थन जोड़ रहे हैं और डेटा एनोटेशन या धाराप्रवाह सत्यापन का उपयोग करने के लिए nuget पैकेज शिपिंग करेंगे।

मास्टर शाखा एक डेमो परियोजना से पता चलता है कि कैसे उन्हें https://github.com/NancyFx/Nancy/tree/master/src/Nancy.Demo.Validation

बेशक

सत्यापन सामान एक्स्टेंसिबल है उपयोग करने के लिए और आप अपनी पसंद के प्रमाणीकरण फ्रेमवर्क के लिए अपने स्वयं के कार्यान्वयन प्रदान कर सकते हैं शामिल हैं। नैन्सी कोर में केवल एक्स्टेंसिबिलिटी पॉइंट्स का एक छोटा सा सेट होता है और फिर वास्तविक कार्यान्वयन अलग-अलग न्यूजेट्स के रूप में भेज दिए जाते हैं।

0.10 रिलीज में आपके मॉडल के आधार पर क्लाइंट-साइड सत्यापन के निर्माण की अनुमति देने के लिए पहला भवन ब्लॉक होगा। हालांकि, 0.10 रिहाई नहीं वास्तविक ग्राहक साइड सत्यापन सामान में शामिल होंगे, लेकिन हुक सत्यापन जानकारी नहीं है जैसा कि इस नमूने मॉड्यूल

https://github.com/NancyFx/Nancy/blob/master/src/Nancy.Demo.Validation/ProductsModule.cs#L16

आशा इस मदद करता है में दिखाया गया है निकालने के लिए!

+0

तो, क्या मैं सही समझता हूं, कि मुझे मैन्युअल रूप से एक्शन हैंडलर के अंदर मॉडल को सत्यापित करना होगा और कुछ मॉडल वापस करना होगा। इसे दिखाने के लिए त्रुटि? –

+0

हां, समय के लिए। जब हमने क्लाइंट साइड सामान को तार दिया है तो यह अधिक पारदर्शी होगा। – TheCodeJunkie

+0

धन्यवाद, साफ़ किया गया! –