相关疑难解决方法(0)

使用实体框架从两个数据库连接表

我正在研究ASP.NET MVC 4 Web应用程序.我使用Entity Framework作为数据访问层,使用数据库第一种方法(.edmx文件).

目前我在两个不同数据库中定义的连接表中存在问题(即我有两个.edmx文件).

例如,如果我想连接表,我正在执行以下查询: -

public ActionResult AutoComplete(string term)
{
   var tech = repository.AllFindTechnolog(term).Take(100);//Call to the first database
   var resources = repository.GetResources(tech.Select(a => a.IT360ID.Value).ToArray(), false);//call to the second database

   var query = from techItems in tech
         join resourcesItems in resources
         on techItems.IT360ID.Value equals resourcesItems.RESOURCEID // join based on db2ID
         orderby techItems.PartialTag
         select new //code goes here

   return Json(query, JsonRequestBehavior.AllowGet);
}
Run Code Online (Sandbox Code Playgroud)

我将对数据库进行两次单独调用,并在应用程序服务器内部进行连接,这不是最佳的面向性能的解决方案.理想情况下,连接将完全在数据库引擎内部发生.

我知道存储过程将允许我纯粹在服务器上连接来自不同数据库的表,但我不想使用SP,因为它会使我的代码不易维护且不易测试.

所以我正在寻找一个解决方案,我可以使用实体框架进行连接并导致单个数据库连接?

linq asp.net-mvc entity-framework entity-framework-5

12
推荐指数
2
解决办法
2万
查看次数