Определить версию Entity Framework, которую я использую?
Я считаю, что есть две версии 1 и 2? А версия 2 называется Entity Framework 4.0?
Как я могу определить, какая версия используется в приложении?
Это в моем web.config означает, что я использую версию 2?
<add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
Ответы
Ответ 1
Существуют две версии: 1 и 4. EFv4 является частью .net 4.0, а EFv1 является частью .net 3.5 SP1.
Да, настройка конфигурации выше указывает на EFv4/.net 4.0.
ИЗМЕНИТЬ
Если вы откроете справочную папку и найдите system.data.entity
, щелкните элемент, а затем проверьте номер версии среды выполнения в проводнике свойств, вы также увидите дополнительную версию. Например, Mine показывает версию времени исполнения версии 4.0.30319 с свойством Version 4.0.0.0. EntityFramework.dll
также можно посмотреть таким же образом. Только версия будет 4.1.0.0, а версия Runtime будет v4.0.30319, которая указывает, что это компонент .NET 4. Кроме того, вы можете открыть местоположение файла, указанное в свойстве "Путь", и щелкнуть правой кнопкой мыши соответствующий компонент, выбрать свойства, затем выбрать вкладку сведений и просмотреть версию продукта.
Ответ 2
Другой способ получить версию EF, которую вы используете, - открыть консоль диспетчера пакетов (PMC) в Visual Studio и ввести Get-Package в командной строке. Первая строка для EntityFramework и список версии, установленной проектом.
PM> Get-Package
Id Version Description/Release Notes
-- ------- -------------------------
EntityFramework 5.0.0 Entity Framework is Microsoft recommended data access technology for new applications.
jQuery 1.7.1.1 jQuery is a new kind of JavaScript Library.... `enter code here`
Он отображает гораздо больше, и вам, возможно, придется прокручивать назад, чтобы найти линию EF, но это самый простой способ узнать, что я знаю.
Ответ 3
может проверить его в файле packages.config.
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="EntityFramework" version="6.0.2" targetFramework="net40-Client" />
</packages>
Ответ 4
Чтобы ответить на первую часть вашего вопроса, Microsoft опубликовала здесь историю версий Entity Framework.
Ответ 5
Если вы откроете каталог ссылок и найдите файл system.data.entity, щелкните элемент, а затем проверьте номер версии среды выполнения в проводнике свойств, вы также увидите подпункт. Например, Mine показывает v4.0.30319 с свойством Version 4.0.0.0.
Ответ 6
Если вы перейдете к ссылкам, щелкните по Entity Framework, просмотрите свойства. Он укажет номер версии.
Ответ 7
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;
}