c# - Concatenating two queries bases on a foreign key -


मैं अपने .NET C # परियोजना में रिपॉझिटरी पैटर्न कार्यान्वित करने के लिए (कम से कम कोशिश कर रहा हूँ) जब मुझे डाटाबेस के साथ संवाद करने की आवश्यकता होती है तो मुझे ऐसा कुछ मिलता है:

  IList & lt; एकल & gt; तलवों = SoleService.All ()। ToList ();   

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

वर्तमान समस्या ये है मेरे पास इकाई एकमात्र और इकाई <कोड> एकमात्र है। एकल कोड में एक विदेशी कुंजी कॉलम है समानतम दो तालिकाओं के बीच संबंध बना रहा है। अभी उन दो संस्थाओं के लिए मैं केवल All () विधि:

  var soleColors = SoleColorService.All () कॉल कर सकता हूँ; Var तलवों = SoleService.All ();   

लेकिन यहाँ मुझे एकमात्र से केवल उन पंक्तियों को चुनने के रूप में कुछ अनुकूलन की आवश्यकता है जो SoleColor इकाई से संबंधित हैं दूसरे शब्दों में केवल एकमात्र से उन पंक्तियों की सूची के साथ समाप्त होता है जहां एकल। आईडी को SoleColor SoleID विदेशी कुंजी में एक विदेशी कुंजी के रूप में पाया जा सकता है।

अभी मैं थोड़ा उलझन में हूँ - जब से मैं आखिर में सादे एसक्यूएल सिन्थैक्स का इस्तेमाल किया था, तब से कुछ समय हो गया है मुझे लगता है कि यह आसानी से एसक्यूएल और जॉइन से हासिल किया जा सकता है। लेकिन जब LINQ शामिल है और मेरा अनुभव अब तक मुझे बताता है कि मुझे उन दो प्रश्नों की आवश्यकता है:

  var soleColors = SoleColorService.All (); Var तलवों = SoleService.All ();   

और फिर किसी भी प्रकार के JOIN / UNION को फ़िल्टर करने के लिए केवल परिणामों को फ़िल्टर करने के लिए बनाएं।

तो इस तरह की परिस्थितियों में मुझे कौन से टूल का उपयोग करने की आवश्यकता है एकमात्र जगह मुझे इसकी ज़रूरत है और मैं इसे खुद और निश्चित रूप से यह वर्तमान स्थिति में करने के लिए सीखना चाहता हूँ?

आपकी आखिरी टिप्पणी के बाद मुझे लगता है कि यह वही है जो आप खोज रहे हैं:

  से एस-एस-सेवा में.सभी () एकल कोड सेवा में शामिल हों। S.ID बराबर होता है sc। नीला चयन करें   

लेकिन यह केवल तभी काम करता है जब दोनों रिपॉजिटरी के समान संदर्भ उदाहरण होते हैं। यदि नहीं, तो आपको इसे दो चरणों में करना है:

  var ids = SoleColorService.All ()। (Sc = & gt; sc.SolID) चुनें। ToArray (); Var तलवों = SoleService.All ()। जहां (एस = & gt; आईडी.संसाधन (एस.आई.डी.));   

मैं स्थिर संहिता के बारे में हालांकि थोड़ी संदिग्ध हूं > तरीकों वे सुझाव देते हैं कि आप स्थिर संदर्भों का उपयोग करते हैं, जिन्हें बुरा व्यवहार माना जाता है। आगे मैं संघों के बारे में सोचता हूं। एकमात्र के लिए एकमात्र रंग , अर्थात् एक एकल कोड वाले एफके को प्राप्त करने की उम्मीद थी।

Comments

Popular posts from this blog

excel vba - How to delete Solver(SOLVER.XLAM) code -

github - Teamcity & Git - PR merge builds - anyway to get HEAD commit hash? -

ios - Replace text in UITextView run slowly -