2011-10-05 12 views
6

मेरे पास 3 टेबल हैं और मैंने उनमें से प्रत्येक के साथ संबंध बनाए हैं।सी # डेटासेट। विवरण: डेटासेट संबंधों का उपयोग कैसे करें?

देना कहते हैं: तालिका 1 है: सहायता, बोली, सीआईडी, someText और someNumber

तालिका 2 है: बोली, txtValueTable2, someText

तालिका 3: सीआईडी, txtValueTable3, someText

कुछ कोड:

ds.Relations.Add("BrandNameStr", ds.Tables[1].Columns["bID"], ds.Tables[0].Columns["bID"]); 
      ds.Relations.Add("IngredientStr", ds.Tables[2].Columns["cID"], ds.Tables[0].Columns["cID"]); 

अब मैं वा 1 डेटासेट बनाने के लिए सभी 3 टेबलों से कॉलम का उपयोग करने के लिए, लेकिन मुझे नहीं पता कि कैसे?

डाटासेट निम्नलिखित कॉलम होना चाहिए: सहायता, txtValueTable2, txtValueTable3, someText और someNumber

कोई मेरी मदद कर सकते हैं?

उत्तर

4

Here एक अच्छा उदाहरण है।

कुछ शब्दों में आपको DataTabel.GetChildRows() विधि का उपयोग करना होगा।

Here उदाहरण काम कर रहे हैं

+0

यह वह नहीं है जिसे मैं ढूंढ रहा हूं। मैं जानना चाहता हूं कि इस नए कॉलम लेआउट के साथ डेटासेट कैसे प्राप्त करें। यह उदाहरण केवल संबंधों को प्रिंट करता है, जो करना आसान है। मैं नए डेटासेट के निर्माण के साथ संघर्ष कर रहा हूं। – Remco

+0

मुझे लगता है कि आप कुछ कोड लिखने के बिना डेटासेट नहीं प्राप्त कर सकते हैं, और कोड की शांति मैं आपको सही तरीके से इंगित करता हूं ... बाल पंक्तियों के मूल्य को मुद्रित करने के बजाय आप नए डेटाटेबल बना सकते हैं और बाल पंक्तियां जोड़ सकते हैं । तो आपको नए डेटाटेबल के साथ एक नया डेटासेट बनाना होगा जिसमें आपके इच्छित सभी कॉलम शामिल हों, और रन-टाइम पर डेटा पंक्ति जोड़ें ... या एक सरल तरीका मास्टर/विवरण डेटाग्रिड का उपयोग करना और संबंधों के साथ डेटासेट को बांधना – 2GDev

+0

ठीक है, यह उदाहरण मेरे लिए पर्याप्त नहीं है, मुझे अभी भी पता नहीं है कि एक नया डेटासेट कैसे बनाया जाए? मैं कोड लिखने से भी डरता नहीं हूं। लेकिन मुझे उम्मीद नहीं है कि मेरे पास 100 कॉलम हैं और केवल दूसरे और तीसरे कॉलम को अन्य टेबलों के कॉलम के साथ प्रतिस्थापित किया जाना है जिन्हें मुझे 100 बार "column.add()" लिखना है? – Remco

0

हाय आप इस से बदलने की जरूरत है:

ds.Relations.Add ("BrandNameStr", ds.Tables [0] .Columns [ "बोली"], डी एस। टेबल्स [1] .Columns [ "बोली"]);

+0

इस परिवर्तन के लिए अपना कारण बताते हुए टिप्पणी जोड़ें। – phoenix

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