2012-03-27 19 views
6

Cuando me genera el archivo EDMX se establece el esquema de cada EntitySet¿Cómo cambiar el esquema a través de la cadena de conexión cuando se conecta a Oracle utilizando Entity Framework?

<EntitySet 
    Name="TableName" 
    EntityType="Model.Store.TableName" 
    store:Type="Tables" 
    Schema="MySchema" /> 

El problema es que si quiero cambiar a la base de datos de producción que tengo que cambiar el EDMX ya no sé cómo elegir el esquema en la cadena de conexión.

¿Cómo hacerlo?

+0

¿El primer acercamiento al código es una opción? –

Respuesta

1

Si el primer método del código es una opción, puede anular el método OnModelCreating en su clase DbContext. En el método OnModelCreating puede poner la lógica para detectar Oracle y cambiar el nombre del esquema en consecuencia. El primer enfoque código ha sido preguntado por here.

9

sólo tenía que editar el EDMX y quitar el esquema de todos los EntitySet

<EntitySet 
    Name="TableName" 
    EntityType="Model.Store.TableName" 
    store:Type="Tables" /> 

Ahora se conecta con el esquema predeterminado para un usuario determinado.

+2

Muchas gracias por esta respuesta. Tuvimos el mismo problema en mi empresa y no pudimos resolverlo. Ya perdimos horas y estábamos trabajando en el plan B (use SQL server en lugar de Oracle), pero su respuesta salvó el día. – Quagmire

+0

Impresionante No sabía cómo cambiarlo porque estoy trabajando en un proyecto con base de datos primero –

Cuestiones relacionadas