में एंटीटी टाइप टाइप करने के लिए एंटिटीसेट नाम प्राप्त करें, जैसे कि "संपर्क", एक एंटीटी टाइप टाइप किया गया है, मैं इसे एंटिटीसेट के नाम से कैसे प्राप्त कर सकता हूं, यानी "संपर्क" जैसे बहुवचनीकरण?ईटी
ईटी
उत्तर
आप पहले से ही एक संलग्न इकाई (जाहिर है आप, पहली पंक्ति की जरूरत नहीं है बस अपने मौजूदा इकाई का उपयोग करें) है, तो:
Contact c = context.Contacts.Where(x => x.blah).FirstOrDefault();
string setName = c.EntityKey.EntitySetName;
या आप नहीं करते हैं:
string className = typeof(Contact).Name
var container =
context.MetadataWorkspace.GetEntityContainer(context.DefaultContainerName, DataSpace.CSpace);
string setName = (from meta in container.BaseEntitySets
where meta.ElementType.Name == className
select meta.Name).First();
बहुत अच्छा। मुझे पीओसीओ इकाइयों के अतिरिक्त अनुकूलन करने की आवश्यकता थी, जैसे कि सभी इकाई वर्गों में GetById() विधियों को जोड़ना। –
जीनियस, मैं उम्र के लिए ऐसा करने की कोशिश कर रहा हूं, बहुत धन्यवाद, एक महान उत्तर के लिए +1 –
ध्यान दें कि CSpace क्वेरी केवल डेटाबेस से कनेक्ट होने पर ही काम करती है, इसलिए यह उन परिदृश्यों में काम नहीं करेगी जहां आप बस सीधे प्रकार पूछना चाहते हैं। –
इस विस्तार के उपयोगी हो सकता है
public static class MyExtensions
{
public static string GetEntitySetName<T>(this ObjectContext context)
{
string className = typeof(T).Name;
var container = context.MetadataWorkspace.GetEntityContainer(context.DefaultContainerName, DataSpace.CSpace);
string entitySetName = (from meta in container.BaseEntitySets
where meta.ElementType.Name == className
select meta.Name).First();
return entitySetName;
}
}
और की तरह उपयोग:
db.AttachTo(db.GetEntitySetName<MyEntityType>(), myEntityInstance);
- 1. बीआईआरटी एचटीएमएल रिपोर्ट में एम्बेडेड छवि चार्ट कैसे बनाएं?
- 2. पायथन - एलिमेंट ट्री एक्सएमएल घोषणा
- 3. सॉफ़्टकीबोर्ड दिखा रहा है जब बैक बटन दबाया जाता है जब संपादन बटन संपादित करें
- 4. एंटीटी फ्रेमवर्क चार दशमलव पर गोल करता है जब सब कुछ चार दशमलव
- 5. पायथन: यूनिकोड और ElementTree.parse
- 6. आईफोन
- 7. /usr/स्थानीय/बिन:/usr/bin: $ पथ के बजाय के शीर्ष
- 8. जेएक्सिंग्स बारकोड्सकेनर में मेनू जोड़ना, और सतहदृश्य
- 9. अभिव्यक्ति टेम्पलेट्स और सी ++ 11
- 10. एसक्यूएल लायक ऑपरेटर के प्रदर्शन को बढ़ाने के लिए उपयुक्त प्रतिस्थापन क्या है?
मुझे लगता है कि आपके पास ऑब्जेक्ट का उदाहरण नहीं है? – Nix
@ निक्स I भी एक ही समस्या थी, मेरा प्रकार टी param था, तो निश्चित रूप से वस्तु का कोई उदाहरण नहीं था? –
मुझे इसके लिए टिप्पणी करना और धन्यवाद देना है, क्योंकि मैं 'संपर्क' और 'संपर्क' के एक ही मुद्दे में भाग गया – cost