2010-01-17 17 views
37

में एएसपी.नेट एमवीसी बाइंड सरणी यह ​​कुछ हद तक एक प्रश्न है (कृपया मुझे बताएं कि उन्हें विभाजित किया जाना चाहिए)।मॉडल

1) मेरे पास एक मॉडल क्लास है जिसमें इसके अंदर मौजूद वस्तुओं की एक सरणी है। मैं इसे स्वचालित रूप से बांधने में सक्षम होना चाहता हूं इसलिए मैं अपने नियंत्रकों में एक pollModel तर्क स्वीकार कर सकता हूं।

public class pollResponseModel 
{ 
    public long id { get; set; } 
    public long pollID { get; set; } 
    public string text { get; set; } 
    public long count { get; set; } 
} 

public class pollModel 
{ 
    public long id; 
    public long entID { get; set; } 
    public string question { get; set; } 
    public DateTime posted { get; set; } 
    public DateTime expiration { get; set; } 

    public pollResponseModel[] responses { get; set; } 
} 

समस्या यह है कि मुझे यकीन है कि responses क्षेत्र बाध्य करने के लिए कैसे, क्योंकि यह किसी भी मनमाने ढंग से आकार हो सकता है नहीं देख रहा हूँ है। खैर, मैं संपादन दृश्य प्रदर्शित करते समय इसे ठीक से बांध सकता हूं, लेकिन यह इसके बारे में है। इससे मुझे मेरे प्रश्न के दूसरे भाग में ले जाता है:

2) क्लाइंट पर सूची में डेटा को गतिशील रूप से बनाने और हटाने का एक स्वीकार्य तरीका क्या है, ताकि यह मॉडल के लिए बाध्य हो और इसके संशोधित रूप में पहुंचा जा सके। सर्वर? मैं आईफोन सूची जीयूआई जैसे काम करने वाली सृजन/हटाने की प्रक्रिया की कल्पना करता हूं: एक एकल + बटन एक नया तत्व जोड़ देगा, और डेटा की प्रत्येक पंक्ति पर - बटन इसे सूची से हटा देगा। मुझे लगता है कि jQuery एक उचित प्रारंभिक बिंदु है लेकिन मेरे जेएस कौशल बहुत सीमित हैं।

उत्तर

41

फिल हाक द्वारा इस आलेख को देखें: Model Binding To a List। यह समझाता है कि आपको सूची गुणों या जटिल वस्तुओं के गुणों से जुड़ने के लिए क्या करना है।

अनिवार्य रूप से आपको मॉडल पोस्ट बाइंडर को पार्स करने के लिए सही तरीके से अपना पोस्ट डेटा बनाना होगा। लेख बताता है कि छिपे हुए इंडेक्स फ़ील्ड को कैसे जोड़ना है और अपने फॉर्म में अपनी जटिल गुणों का प्रतिनिधित्व करना है।

+0

आपके द्वारा प्रदान किए गए लिंक के लिए बस वोट दिया गया। महान लेख –