我还没有找到任何使用 LINQ 查询多个数据库的好材料。我一直在使用连接字符串在数据库之间进行更改并为用户显示数据,现在我想实现一个搜索功能,它查询所有数据库并返回一个列表,而不是事先选择数据库。
到目前为止,这是我汇总的内容。它从一个数据库返回一个列表,这显然不是我想要的。
public ActionResult getCustomers(string cust)
{
List<trakman_Entities> teInstances = new List<trakman_Entities>();
IEnumerable<customer> customers = null;
for (var i = 1; i < ConfigurationManager.ConnectionStrings.Count; i++)
{
if (ConfigurationManager.ConnectionStrings[i].ConnectionString.ToLower().Contains("metadata"))
{
string con = ConfigurationManager.ConnectionStrings[i].ConnectionString;
teInstances.Add(new trakman_Entities(con));
}
}
foreach (trakman_Entities entitiy in teInstances)
{
customers = entitiy.customers.Where(c => c.code.StartsWith(cust));
}
foreach(customer c in customers)
{
Response.Write(c.code);
Response.Write(c.name);
}
Response.End();
return View(customers);
}