2009-06-01 8 views
0

J'ai une base de données appelée MasterDatabase qui a une table MainIndex avec des colonnes Id, base de données (nvarchar), Tableau (nvarchar)Utilisez LINQ pour obtenir des données à partir d'une base de données à partir des données dans une autre base de données

et j'ai 2 autres bases de données avec des tables et des données.

Existe-t-il un moyen de substituer l'instruction FROM avec les résultats de MasterDatabase.MainIndex?

Cela peut-il être fait avec LINQ?

+0

Ou est-il un moyen plus elegent de faire ce que je viens de décrire? –

Répondre

0

Vous pouvez également accéder à des tables d'une autre base de données par les tables préfixer dans votre .dbml soit avec [DatabaseName].[SchemaName].[TableName] ou si elle est sur un serveur differenct inclure le [ServerName] ainsi ... Ensuite, vous n » Vous devez utiliser Dynamic linq

+0

Je ne sais pas ce que vous entendez par "préfixer les tables" merci –

+0

dans le LinqToSql dbml ajouter manuellement la table qui est de la base de données en dehors de celle utilisée dans votre chaîne de connexion. Faites un clic droit sur cette table et sélectionnez les propriétés ... Il y a une propriété appelée Source qui est le nom de la table dans la base de données ... Puis renommez la table avec les instructions ci-dessus ... – bytebender

1

Une autre alternative consiste à ajouter la table que vous souhaitez sélectionner dans la deuxième base de données en tant que vue dans la base de données master. Vous pourrez ensuite mapper la vue en tant qu'entité.

:)

Questions connexes