2010-07-31 20 views
100

मुझे विश्वास है कि दो संस्करण 1 और 2 हैं? और संस्करण 2 को इकाई फ्रेमवर्क 4.0 के रूप में जाना जाता है?मैं जिस इकाई फ्रेमवर्क का उपयोग कर रहा हूं उसका संस्करण निर्धारित कर रहा हूं?

मैं कैसे बता सकता हूं कि किसी एप्लिकेशन में कौन सा संस्करण उपयोग किया जा रहा है?

यह मेरे web.config में है इसका मतलब है कि मैं संस्करण 2 का उपयोग कर रहा हूं?

<add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 

उत्तर

73

दो संस्करण हैं: 1 और 4 EFv4 .net 4.0 का हिस्सा है, और EFv1 .net 3.5 एसपी 1 का हिस्सा है।

हां, ऊपर दिए गए कॉन्फ़िगरेशन सेटिंग को EFv4/.NET 4.0 पर इंगित करें।

संपादित आप खोलना संदर्भ फ़ोल्डर और system.data.entity का पता लगाने, आइटम पर क्लिक करें, फिर गुण एक्सप्लोरर में क्रम संस्करण संख्या की जांच, तो आप के रूप में अच्छी उप संस्करण देखेंगे। उदाहरण के लिए मेरा संस्करण 4.0.0.0 दिखाए गए संस्करण गुण के साथ रनटाइम संस्करण v4.0.30319 दिखाता है। इस फैशन में EntityFramework.dll भी देखा जा सकता है। केवल संस्करण 4.1.0.0 होगा और रनटाइम संस्करण v4.0.30319 होगा जो निर्दिष्ट करता है कि यह एक .NET 4 घटक है। वैकल्पिक रूप से, आप पथ गुण में सूचीबद्ध फ़ाइल स्थान खोल सकते हैं और प्रश्न में घटक पर राइट-क्लिक कर सकते हैं, गुणों का चयन कर सकते हैं, फिर विवरण टैब चुनें और उत्पाद संस्करण देखें।

+2

हाँ, लेकिन 4.0 के विभिन्न संस्करण हैं। – MikeKulls

+0

माइक्रोसॉफ्ट के संस्करण इतिहास के लिए नीचे मेरा जवाब देखें। – Marcel

+0

अब तीन संस्करण हैं और ईएफवी 5 .NET 4.5 से जुड़ा हुआ है और अभी तक, ईएफवी 6 निर्माणाधीन है – Farax

11

यदि आप संदर्भ फ़ोल्डर खोलते हैं और system.data.entity का पता लगाते हैं, तो आइटम पर क्लिक करें, फिर गुण एक्सप्लोरर में रनटाइम संस्करण संख्या देखें, आप उप संस्करण भी देखेंगे। उदाहरण के लिए मेरा संस्करण v4.0.30319 दिखाता है जिसमें संस्करण संपत्ति 4.0.0.0 दिखाती है।

16

अपने प्रश्न के पहले भाग का जवाब देने के लिए: माइक्रोसॉफ्ट ने अपना Entity Framework version history here प्रकाशित किया।

123

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

PM> Get-Package 

Id        Version    Description/Release Notes                                               
--        -------    -------------------------                                               
EntityFramework    5.0.0    Entity Framework is Microsoft's recommended data access technology for new applications.                               
jQuery       1.7.1.1    jQuery is a new kind of JavaScript Library....           `enter code here`

यह बहुत कुछ प्रदर्शित करता है और आप वापस स्क्रॉल एफई लाइन लगाने के लिए अप करने के लिए हो सकता है, लेकिन यह सबसे आसान तरीका है मैं पता लगाने के लिए के बारे में पता है।

+12

वैसे यह मानता है कि आपने पैकेज प्रबंधक के माध्यम से संदर्भ स्थापित किया है जो कि हम में से कई लोगों के लिए मामला नहीं है। –

+0

बेस्ट उत्तर, एक आकर्षण की तरह काम करता है, और अन्य चीजों के लिए भी काम करता है: डी – Squazz

+0

@LaurentJalbertSimard मैंने स्पष्ट रूप से ऐसा नहीं किया, और यह अभी भी दिखाई देता है। – Dan

32

इसे package.config फ़ाइल में देख सकते हैं।

<?xml version="1.0" encoding="utf-8"?> 
<packages> 
<package id="EntityFramework" version="6.0.2" targetFramework="net40-Client" /> 
</packages> 
1

यदि आप संदर्भों पर जाते हैं, तो इकाई फ्रेमवर्क पर क्लिक करें, गुण देखें यह आपको संस्करण संख्या बताएगा।

0
internal static string GetEntityFrameworkVersion() 
    { 
     var version = ""; 
     var assemblies = System.AppDomain.CurrentDomain.GetAssemblies().Select(x => x.FullName).ToList(); 
     foreach(var asm in assemblies) 
     { 
      var fragments = asm.Split(new char[] { ',', '{', '}' }, StringSplitOptions.RemoveEmptyEntries).Select(x=> x.Trim()).ToList(); 
      if(string.Compare(fragments[0], EntityFramework, true)==0) 
      { 
       var subfragments = fragments[1].Split(new char[] { '='}, StringSplitOptions.RemoveEmptyEntries); 
       version =subfragments[1]; 
       break; 
      } 
     } 
     return version; 
    } 
संबंधित मुद्दे