Linq to Entity中连接两个数据库时要注意的问题

今天大学同学问了我一个问题,Linq to Entity中连接两个数据库时,报错“指定的 LINQ 表达式包含对与不同上下文关联的查询的引用。”

研究下却是发现这个问题,下面是我做的测试:

class Program
    {
        static void Main(string[] args)
        {
            using(UserDBEntities context=new UserDBEntities() )
            {
                using (WaterManageEntities client = new WaterManageEntities())
                {                    
                    var query = from s in context.NewsTypes where s.ID == client.Layers.FirstOrDefault().LayerID select s;                          
                    foreach (NewsType type in query)
                    {
                        
                        Console.WriteLine(type.NAME);
                        Console.ReadKey();
                    }
                }
            }
        }
    }

上面的代码报错如图:

但是我无意中修改成下面的代码,就可以了。重新定义一个变量,分步骤来查询就可以了

 class Program
    {
        static void Main(string[] args)
        {
            using(UserDBEntities context=new UserDBEntities() )
            {
                using (WaterManageEntities client = new WaterManageEntities())
                {         
                    int ID=client.Layers.FirstOrDefault().LayerID ;
                    var query = from s in context.NewsTypes where s.ID ==ID select s;                          
                    foreach (NewsType type in query)
                    {
                        
                        Console.WriteLine(type.NAME);
                        Console.ReadKey();
                    }
                }
            }
        }
    }

总结:

这连接两个不同数据库时报上面的错误,我们只需要分步骤查询就可以了,我的猜测是数据源Connection只能允许我们同时只能连接一个数据库。不知道这个理解是否正确,希望有人有更好的解决办法

转载于:https://www.cnblogs.com/powerzhang/p/3283672.html

Linq to Entity中连接两个数据库时要注意的问题相关推荐

  1. python2.7可以同时连接两个数据库吗

    一.前言 这个问题是博主在开发的时候,遇到需要在一个脚本里面连接两个数据库的需求,当时对于python2.7不是很熟悉,所以想要在网上搜一下python2.7是否可以同时连接两个数据库,只是并没有一个 ...

  2. 今天在webcasts上看sql server 2008的新功能介绍,无意中发现在连接sql server 数据库时,还有一个...

    今天在webcasts上看sql server 2008的新功能介绍,无意中发现在连接sql server 数据库时,还有一个 Failover Partner的选项.以前都没注意过,它的主要功能就是 ...

  3. 远程桌面未知的用户名_在win7中连接到远程桌面时解决用户名和密码错误的问题...

    在连接到远程桌面时,win7系统也会遇到相同的故障问题. 例如win7用户名和密码大全,用户说在Win7中连接到远程桌面时win7用户名和密码大全,用户名和密码不正确. 使用登录帐户远程登录时,始终会 ...

  4. java access 密码_java 连接加密Access2007数据库时,不用输入用户名密码也能连上

    java 连接加密Access2007数据库时,不用输入用户名密码也能连上 我用Access2007做了一个加密的数据库,用的是Access本身的功能加密的.双击打开Database2.mdb文件时, ...

  5. mysql中连接和断开数据库_robot framework——连接和断开mysql数据库

    按照命令:pip  install  -U  robotframework-databaselibrary 来进行按照. 按照完成后,在使用databaselibrary库时,需要预先在测试套件中导入 ...

  6. dw连接mysql数据库原理_Dreamweaver中连接SQL Server数据库代码

    Adobe Dreamweaver CS3连接ACCESS数据库 "Driver={Microsoft Access Driver (*.mdb)};Uid=;Pwd=;DBQ=" ...

  7. VB连接SQL SERVER 数据库时ODBC设置

    配置ODBC数据源 1,打开ODBC数据管理器,选择文件DSN,(关于用户DSN,系统DSN,文件DSN),点击"添加"按钮. 2,安装数据源的驱动程序,选择"sql s ...

  8. 64位win7下,plsql连接64位数据库时提示initialization error,已解决

    问题描述:plsql链接数据库时提示initialization error,(本机系统是windows7 64位,远程数据库所在系统为windows server 2008 64位) 解决方案: 一 ...

  9. postgresql中连接两张表更新第三张表(updata)

    目录 前言 准备数据库和表 表1 表2 最终员工表 SQL语句 扩展:with语句 前言 在工作中可能会遇到需要结合两张表的数据来添加到第三张表,或者说是第三张表数据有误,需要覆盖更新,本章通过举例来 ...

最新文章

  1. Nginx—核心配置location匹配规则说明
  2. mybatis中的MapperAnnotationBuilder
  3. 学计算机的学校17w,摇号中签率23.19%,学费一年17W?11所民校详情介绍!
  4. Logstash7.6.0同步MySQL到Elasticsearch
  5. MongoDB-JAVA-Driver 3.2版本常用代码全整理(4) - 地理空间索引
  6. Sublime Text 快捷键使用
  7. crunch字典生成工具
  8. Android自定义ImageView(二)——实现双击放大与缩小图片
  9. java mockserver搭建_mockjs,json-server一起搭建前端通用的数据模拟框架教程
  10. 1005 继续(3n+1)猜想 (25 分)—PAT (Basic Level) Practice (中文)
  11. 蓝牙音频传输格式:ACC,SBC,APTX和LDAC
  12. 高数_第6章无穷级数_函数的幂级数展开式_马克劳林级数
  13. 乐高spike python_乐高教育EV3比SPIKE Prime更好的十个理由!
  14. 旧手机改造成web服务器并实现内网穿透
  15. 计算机添加桌面小插件,一款实用的Windows小插件 ——桌面日历DesktopCal
  16. axios 注册拦截器 cdn引用_提高传输速度,选p2p加速还是cdn加速呢?
  17. duang~NBA资讯小程序
  18. iOS7 tabbar遮盖tableview的cell解决方法
  19. MySQL的not exists与双重否定(模板)
  20. matlab 如何调用mex文件,matlab调用mex文件报错

热门文章

  1. linux修改默认python版本_将Linux下python默认版本切换成替代版本
  2. 吴恩达深度学习 ——4.4 为什么使用深层表示
  3. 去哪儿-03-index-swiper
  4. Golang笔记—封装/继承/接口
  5. 专业修改数据库服务器,专业修改数据库服务器
  6. bp神经网络预测模型_【2020顶会KDD】AutoST:面向时空预测的高效神经网络学习模型...
  7. gmail注册手机号不能用于验证_一个手机号码、辅助邮箱,可以注册绑定多少个gmail帐号?...
  8. java oss如何下载文件_Java OSS批量下载并压缩为ZIP代码实例
  9. linux内核oops错误码说明,调试 – 了解内核oops错误代码
  10. es mysql in操作_es 常用操作