.net - Linq to Entities : Many-to-Many join a Table and a View -
मेरे पास कई तालिकाओं और दृश्य हैं:
टेबल्स:
- aspnet_roles < / Code> (RoleId और अन्य कॉलम के साथ)
- स्थिति
(स्थिति आईडी और अन्य कॉलम के साथ)
- रोलस्टैटस
(RoleId और StatusId और रिश्तों के साथ) )
जब मैं लिनक्स टू एंटिटीज एडीएमएक्स फ़ाइल बनाता हूं, तो यह एक status
सूची कोड में aspnet_roles
और एक aspnet_roles < / कोड> सूची में
स्थिति
।
अभी तक ठीक है।
लेकिन अब मेरे पास StatusId
कॉलम के साथ एक दृश्य है।
मुझे जो चाहिए, उस दृश्य और aspnet_roles
तालिका के बीच एक सम्मिलित होने के साथ एक LINQ क्वेरी बनाने के लिए परिणाम सेट में RoleName
कॉलम जोड़ना है।
एसक्यूएल में ऐसा कुछ होगा:
एक का चयन करें। *, Aspnet_roles.RoleName खोज से देखें एक भूमिका में शामिल करें। स्थिति = RoleStatus.StatusId में शामिल करें aspnet_Roles RoleStatus.RoleId पर = Aspnet_rol Es.RoId
लेकिन मुझे यह नहीं पता कि LINQ को इकाईयों में कैसे करना है। समस्या यह है कि मुझे कभी भी RoleId
या StatusId
तक पहुंच नहीं है क्योंकि ये फ़ील्ड "code" aspnet_roles और स्थिति
द्वारा "बदली" हैं कोड> सूची गुण।
इसलिए मुझे ऐसा LINQ मिलता है:
ctx.SearchView में avis से joinRoles में शामिल करें ctx.aspnet_roles avis.StatusId में joinRoles.Status बराबर है । (और फिर क्या ??)
स्थिति के रूप में एक सूची है मुझे StatusId
से मेल नहीं खाती है।
मुझे लगता है कि मैं मैं गलत काम कर रहा हूं, लेकिन मुझे नहीं पता है।
सबसे पहले, मैं ईएफ 4 में अपग्रेड करने की सलाह देता हूं; उन्होंने "विदेशी कुंजी संघों" को जोड़ा, इसलिए अब हमारे पास संदर्भ के अलावा * आईडी फ़ील्ड हैं।
दूसरे, क्या आपकी डिज़ाइनर में एक इकाई के लिए मैप की गई है? दृश्य और स्थिति तालिका के बीच एक सहयोग जोड़ना संभव है। (मैंने वास्तव में इसे एक दृश्य के साथ नहीं किया है, लेकिन मुझे विश्वास है यह काम करेगा)।
Comments
Post a Comment