La croix-interrogation de bases de données en EF
Est-il possible de mettre en œuvre la croix-interrogation de bases de données dans le Cadre de l'Entité? Imaginons que j'ai deux Entités de l'Utilisateur et de Poste, de l'entité utilisatrice est en database1 et Post est dans la base de données2, ce qui signifie que ces entités sont dans des bases de données distinctes. Comment devrais-je obtenir des messages de l'utilisateur dans le Cadre de l'Entité ?
double possible de Entity Framework - comment gérer les tables dans les bases de données différentes mais sur le même serveur?
Oui j'ai exposé Postes dans database1, mais je ne comprends pas, que voulez-vous dire à l'aide de SQL de la Vue ou de l'alias ?
Oui j'ai exposé Postes dans database1, mais je ne comprends pas, que voulez-vous dire à l'aide de SQL de la Vue ou de l'alias ?
OriginalL'auteur saber | 2013-01-15
Vous devez vous connecter pour publier un commentaire.
Contexte EF ne prend pas en charge les requêtes de base de données. Vous devez exposer postes dans database1 par le biais de SQL View (ou synonyme) et l'utiliser comme une partie de la base de données.
OriginalL'auteur Ladislav Mrnka
Je sais que c'est un vieux thread, mais, en fait. ceci est possible. Si les bases de données sont sur le même serveur, puis tout ce que vous devez faire est d'utiliser un
DbCommandInterceptor
.Comme un exemple, si j'attache une
DbCommandInterceptor
àMyContext,
je peux intercepter toutes les exécutions de commandes et de remplacer la Table spécifiée(s) dans la requête avec mon plein db chemins.La bonne chose également au sujet de cette approche est que le Modèle EF de la Cartographie fonctionne toujours correctement et respecte les attributs de Colonne, ne nécessite pas de points de vue, et ne nécessite pas stockées procs.
OriginalL'auteur long2know
Vous pouvez utiliser
ExecuteStoreQuery
, comme:Vous devez définir un
PlainOldClrObject
classe avec les colonnes comme des propriétés avec des getters/setters, comme:OriginalL'auteur Andomar
Non, vous ne pouvez pas. Vous aurez à créer des contextes et la joindre à votre auto. Voir ici.
Vous pourriez résoudre à la base de données de la ruse, de la création d'une vue dans une base de données de l'reflète une table à l'autre.
OriginalL'auteur zmbq