¿Algo ha cambiado o aún no es compatible con esto? Por ejemplo unen database1.dbo.Users y database2.dbo.AddressesEntity framework 4 y base de datos múltiple
Respuesta
Creo que lo que pide es ais si se puede unir tablas de diferentes bases de datos, no los diferentes proveedores, lo que resulta en una entidad asignados a dos o más tablas o vistas desde diferentes bases de datos.
Si lo piensa bien, cuando crea un modelo EDM con Visual Studio, le pide que proporcione una base de datos existente y cuando termina de crear el modelo genera una cadena de conexión EF que dirige internamente a la base de datos subyacente dada Cadena de conexión.
por ejemplo: metadatos = res: // /EFTestModel.csdl|res:// /EFTestModel.ssdl|res:// /EFTestModel.msl;provider=System.Data.SqlClient; cadena de conexión de proveedor = "Data Source = \;. Initial Catalog = EFTest; Integrated Security = true; MultipleActiveResultSets = True" *
Así que cada modelo coincide sólo con una base de datos, solamente una cadena de conexión.
EF4 aún no es compatible con la creación de un modelo conceptual que funcione con N modelos de almacenamiento. Al menos esto no es compatible con ningún proveedor incorporado. Quizás en el futuro esto podría hacerse a través de un nuevo proveedor que combine el soporte de muchos almacenes (de los mismos proveedores o diferentes).
No he investigado lo suficiente, pero tal vez Windows Server AppFabric (Codename Velocity) podría ser el puente para pasar por esta brecha.
Nota: He tratado incluso de editar manualmente el código XML para el EDM (edmx) para insertar un segundo elemento en el interior del < edmx: StorageModels > etiqueta pero no coincide con el esquema XML EDM de modo VS advierte al respecto: error 10021: Elemento de esquema duplicado encontrado.
Rafa Ortega MAP2010
Véase la respuesta a la pregunta similar:
Entity Framework - Inserting entity with multiple models and databases
De hecho, me encontré una manera de hacer un palmo modelo de EF múltiples bases de datos si su base de datos soporta sinónimos. Básicamente, configura los sinónimos en Database2 en Database1, crea modelos de edmx separados para cada uno, luego combina el XML
Publiqué los pasos exactos para hacer que un archivo edmx abarque varias bases de datos here si te interesa, junto con un script para hacer la fusión para usted cada vez que algo cambia.
- 1. Entity Framework 4 y WPF
- 2. Entity Framework 4 y SQL Compact 4: ¿Cómo generar una base de datos?
- 3. Entity Framework 4 - Herencia
- 4. Base de datos de Mock Entity Framework
- 5. Entity Framework 4 y valores predeterminados
- 6. Entity Framework 4 Repository?
- 7. Entity Framework sin base de datos
- 8. Migraciones de bases de datos para Entity Framework 4
- 9. Excluir un campo/propiedad de la base de datos con Entity Framework 4 y Code-Primera
- 10. Entity Framework y nombres de columna de base de datos
- 11. Claves únicas en Entity Framework 4
- 12. Entity framework 4 o DataSet?
- 13. Entity Framework 4, heredando vs extendiendo?
- 14. Membresía Asp.Net - Proveedores en Entity Framework 4
- 15. Entity Framework y bases de datos multilingües
- 16. Creando propiedades blob con Entity Framework 4?
- 17. Ejemplos para Entity Framework 4: ¿Mapeo de POCOs a la base de datos EAV?
- 18. Entity Framework Code First no genera base de datos
- 19. Entity Framework y MongoDb
- 20. SqlBulkCopy y Entity Framework
- 21. Entity framework y VARBINARY
- 22. Entity Framework 4 POCO con diccionario
- 23. Entity Framework 4: Selección de registro único
- 24. Claves de base de datos compuestas con Entity Framework 4.0
- 25. Primer código de Entity Framework 4 - Impedir DB Drop/Create
- 26. Actualizar esquema de base de datos en Entity Framework
- 27. Bases de datos compatibles con Entity Framework
- 28. Entity Framework 4.3 primer nombre de la base de datos
- 29. Vistas y Entity Framework
- 30. Ventajas y desventajas de Entity Framework 4 Code-First
¿No ha tenido problemas a largo plazo? ¿Es completamente compatible? –
Gran enlace. Muy ingenioso –
@LuisFilipe El proyecto para el que hice esto fue cancelado, por lo que nunca tuve la oportunidad de probarlo completamente. Por lo que sí tuve la oportunidad de probar, las únicas restricciones reales eran las restricciones vigentes para los "sinónimos". Por ejemplo, si su Sinónimo apunta a otro servidor, está limitado a las reglas SQL para acceder a los servidores vinculados. – Rachel