2012-02-08 13 views
7

मैं सरल उदाहरणों से पहले पहली बार एंटिटी फ्रेमवर्क में जा रहा हूं।LINQ-to-Entities, एक ही कॉलम नाम के साथ दो विचारों के बीच सहयोग के साथ संदिग्ध कॉलम नाम

मैं मॉडल-प्रथम दृष्टिकोण का उपयोग कर रहा हूं और LINQ-to-Entities के साथ डेटा स्रोत से पूछताछ कर रहा हूं।

मैंने एक इकाई मॉडल बनाया है जिसे मैं डेटाबेस के विरुद्ध ओडाटा सेवा के रूप में उजागर कर रहा हूं जहां मैं स्कीमा को नियंत्रित नहीं करता हूं। मेरे मॉडल में, मेरे पास दो इकाइयां हैं जो इस डेटाबेस में दो विचारों से दूर हैं। मैंने दोनों इकाइयों के बीच एक सहयोग बनाया है। दोनों विचारों में एक ही नाम के साथ एक कॉलम है।

मैं त्रुटि हो रही है:

Ambiguous column name 'columnname'. Could not use view or function 'viewname' because of binding errors.

अगर मैं एसक्यूएल बयान अपने आप को लिख रहा था, मैं एक उपनाम इस समस्या से बचने के लिए के साथ स्तंभ नामों में से एक अर्हता प्राप्त होगी। ईएफ स्पष्ट रूप से ऐसा नहीं कर रहा है। दृश्य को बदलने से कम, मैं इसे कैसे ठीक करूं? (जो मैं नहीं कर सकता) मुझे लगता है कि इन इकाइयों के साथ वास्तविक तालिकाओं में मैप किए जाने के बजाय इन इकाइयों को मैप किए जाने के साथ कुछ करना है।

+2

कुछ कोड पोस्ट करें। – cadrell0

+0

कृपया स्पष्ट करें कि क्या आप पहले डिज़ाइनर मॉडल या कोड का उपयोग कर रहे हैं। यदि आप डिज़ाइनर का उपयोग कर रहे हैं, तो इसे आसानी से डिज़ाइन सतह पर दोनों दृश्यों को खींचकर और संबंध जोड़कर आसानी से हल करना चाहिए। कोड में पहले इसे कुछ और काम की आवश्यकता होगी। इसके अलावा, क्या आप एंटिटी एसक्यूएल के माध्यम से पूछताछ कर रहे हैं या आप LINQ से इकाइयों का उपयोग कर रहे हैं? – jessehouwing

+0

@jessehouwing: मुझे अभी तक इसके लिए कोड एकत्र करने का मौका नहीं मिला है। मुझे आशा है कि कोई इस पर ठोकर खा सकता है और यह "ओह, मुझे पहले समस्या है" प्रतिक्रिया उत्पन्न होती है। मैंने अभी प्रश्न में कुछ अतिरिक्त जानकारी जोड़ दी है। मैं मॉडल का पहला दृष्टिकोण उपयोग कर रहा हूं, और (जैसा कि शीर्षक में निर्दिष्ट है) मैं LINQ से इकाइयों का उपयोग कर रहा हूं। – dotnetengineer

उत्तर

1

मान लीजिए कि आप मॉडल को बदल सकते हैं क्या आपने मॉडल में जाने और कॉलम नामों में से एक को बदलने की कोशिश की है? मैं अभी भी देख सकता हूं कि यह कैसे समस्याग्रस्त हो सकता है यदि दो विचार एक ही तालिका से उसी कॉलम को वापस खींच रहे हैं। मैं बता सकता हूं कि टेबल पर मैप किए गए मॉडल के साथ सीधे काम करते समय, समान नाम वाले कॉलम होने पर कोई समस्या नहीं है। यहां तक ​​कि एक ही टेबल पर कई संघों को सही ढंग से संभाला जाता है, नेविगेशन गुण स्वचालित रूप से अद्वितीय नाम दिए जाते हैं। आपके द्वारा उपयोग किए जाने वाले ईएफ के किस संस्करण के आधार पर आप मॉडल के तहत या टी 4 टेम्पलेट फ़ाइल के तहत सीएस फ़ाइल में खोदने में सक्षम होना चाहिए और देखें कि क्या हो रहा है। फिर आप अपनी इच्छानुसार इसे मोड़ने के लिए हमेशा आंशिक कक्षा बना सकते हैं।

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