有两个数据库,一个是管理,一个是业务
在管理数据库中有一个用户表,里面有用户名和用户ID等字段。
在业务数据库中查询出一个dataset,里面有用户ID对应的一些业务数据,现在要把这些用户ID显示成用户名,就要连到管理数据库,用linq怎么实现
在管理数据库中有一个用户表,里面有用户名和用户ID等字段。
在业务数据库中查询出一个dataset,里面有用户ID对应的一些业务数据,现在要把这些用户ID显示成用户名,就要连到管理数据库,用linq怎么实现
解决方案 »
- WPF数据绑定求助?
- 在线等。。。急急急!!!
- silverlight2.0开发环境问题
- DataGridview 单元格选中情况
- IBM博尔教育中心与交大联手打造高级软件工程师
- 【菜鸟提问】如何使用winform来制作B/S结构的软件呀?
- httpwebrequest POST 返回值问题
- 谁有c#类库文档?
- 奇简单的问题,给菜单加一个图标?
- winform 即时通讯怎么实现发图片 就是把图片转二进制流 发送给服务端 然后服务端转发给客户端 客户端再转成图片 我QQ2472002594
- C#程序如何设计才能不被Reflector等反编译
- 大虾们救命,帮小弟我看看下面出现的问题到底是怎么回事,小弟将不胜感激!在线等。。。。
看下这篇文章
或许对你有帮助
然后业务:DSB
var result=from u in DSA join from r in DSB on r.用户表的ID equals u.业务表对应的ID
select new
{
u.用户名称,r.Name,r.XXX,r.XXX(你要将业务表要显示的字段用r.写出来就行了)
}
var result=from u in DSA.Tables[0].AsEnumerable() join from r in DSB.Tables[0].AsEnumerable()
on u.Field<ID字段的类型>("ID") equals r.Field<ID字段类型>("业务表对应的ID") select new
{ u.Field<string>("username"),...都按这种格式取就行了 }
DB是我的管理数据库,里面有TUser表,表里有用户ID(UserID),用户姓名(UserName),ds是从业务数据中用存储过程得到的一个数据集,里面也有UserID字段。
var studentinfo = from o in DB.TUser.AsEnumerable()
join q in ds.Tables[0].AsEnumerable() on o.UserID equals q.Field<string>("UserID ")
select new { o.Field<string>("UserName"), q.Field <string>("UserID ") };
在o和q都提示
无效的匿名类型成员声明符。匿名类型成员必须使用赋值、简单名称或成员访问来声明。
join q in ds.Tables[0].AsEnumerable() on o.UserID equals q.Field <string>("UserID ")
select new { o.Field <string>("UserName"), q.Field <string>("UserID ") }; 第一个o.UserID都直接取,后面为什么又o.Field<String>("UserName")?
如果你DB.TUser的话 select new 里面就可以直接使用o.UserName了
var studentinfo = from o in DB.TUser.AsEnumerable()
join q in ds.Tables[0].AsEnumerable() on o.UserID equals q.Field <string>("UserID ")
select new { o.Field <string>("UserName"), UserID=q.Field <string>("UserID ") };