2011-08-10 15 views
15

¿Cómo cambio la cadena de conexión en un primer marco de entidad entidad/aplicación MVC? Intento transferirlo a un sitio en vivo, pero pasa por alto los valores de configuración web y todavía hace referencia a mi versión local de la base de datos.Code First Entity Framework - cambio cadena de conexión

Aquí está la sección de cadena de conexión de mi web.config:

<add name="MembershipConnectionString" connectionString="Data Source=192.168.1.43;Initial Catalog=Website.Models.IntranetApplication;User Id=[UserName];Password=[Password];timeout=30" /> 
<add name="WebsiteConnectionString" connectionString="Data Source=192.168.1.43;Initial Catalog=Website.Models.IntranetApplication;User Id=[UserName];Password=[Password];timeout=30" /> 
<add name="Entities" connectionString="metadata=res://*/Models.IntranetModel.csdl|res://*/Models.IntranetModel.ssdl|res://*/Models.IntranetModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=192.168.1.43;Initial Catalog=Website.Models.IntranetApplication;User Id=[UserName];Password=[Password];MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /> 

No estoy seguro de si la cadena de entidades tiene alguna relevancia, como solía Código Primer marco de la entidad, y creo que sólo apareció cuando intenté crear un archivo edmx (aunque terminé simplemente eliminándolo). La cadena de conexión de Entidades se ha comentado de manera que no creo que se use.

Quiero que entity framework lea "WebsiteConnectionString", pero parece querer usar la cadena de conexión local, pero ni siquiera puedo ver dónde se establece. ¿Cómo lo cambio?

Respuesta

31

La cadena de conexión o su nombre se puede pasar al constructor de DbContext. Si está utilizando constructor por defecto se busca la cadena de conexión con el mismo nombre que el nombre de su clase derivada contexto y si no la encuentra, utiliza éste:

Data Source=.\SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True 

Con nombre de la base misma como tu clase de contexto.

+0

Gracias Ladislav - eso funcionó perfectamente. –

+1

@ ladislav-mrnka He visto muchas respuestas sobre problemas de EF y todas han sido de gran ayuda. ¡Gracias! – edsobo

Cuestiones relacionadas