works ventajas que mvc how framework first español desventajas code c# .net entity-framework entity-framework-4

c# - ventajas - Entity Framework: excepción de ''proveedores'' de elementos no reconocidos



how entity framework works (2)

Debe eliminar la etiqueta del archivo app.config de su proyecto y no del archivo YourProjectName.dll.config, ya que la eliminará automáticamente de YourProjectName.dll.config después de construir su proyecto.

Nota: La respuesta se encuentra en el comentario anterior. Acabo de combinar la respuesta aquí.

Obtengo una excepción de "proveedores" de elementos no reconocidos en tiempo de ejecución cuando uso Entity Framework 5.0.0 con .NET 4.0. En realidad, con .NET 4.0 es la versión 4.4.0 de Entity Framework que se carga cuando hago un paquete de instalación con NuGet. Cuando verifico las propiedades del archivo desde el explorador puedo ver esto:

Aquí está mi archivo de configuración

<configSections> <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --></configSections> <connectionStrings> <add name="xxx" connectionString="metadata=res://*/StreetMusicModel.csdl|res://*/StreetMusicModel.ssdl|res://*/StreetMusicModel.msl; provider=MySql.Data.MySqlClient;provider connection string='' server=xxx.net; user id=xxx; password=xxx; database=xxx''" providerName="System.Data.EntityClient" /> </connectionStrings> <entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> <parameters> <parameter value="v12.0" /> </parameters> </defaultConnectionFactory> <providers> <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity" /> </providers> </entityFramework>

Tengo la sensación de que Entity Framework 4.4.0 no puede reconocer la etiqueta. ¿Puedo simplemente eliminar o renombrar la sección? Cuando elimino la sección, obtengo otra excepción: el proveedor subyacente falló en Abrir .


Tuve este problema después de degradar EF de la versión 6 a la versión 5.0.0 usando Nuget. Creo que el problema es que la configuración de los proveedores se agrega al agregar EF v6, pero no se elimina después de la baja de calificación. Por lo tanto, simplemente puede eliminar el contenido dentro de las etiquetas <providers> y las propias etiquetas y funcionará bien:

<entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> <parameters> <parameter value="v12.0" /> </parameters> </defaultConnectionFactory> </entityFramework>