关于linq访问视图对象结果重复有关问题
发布时间:2011-06-24 21:54:30 文章来源:www.iduyao.cn 采编人员:星星草
关于linq访问视图对象结果重复问题
关系:
表LOGER
左关联 表LogerRole
左关联 表Role
左关联 表RoleMenu
左关联 表Menu
现希望通过Loger表的Loger查得对应所有Menu的MenuName数据.
在数据库的vLogerMenu视图中查询显示正常
数据库只有一个Loger,其ID为0时,以下只讨论单Loger的情况
MenuName
1
2
3
4
5
DBEntities myDBEntities = new DBEntities();
var result = from q in myDBEntities.vLogerMenu
select q;
comboBox_Menu.DataSource = result.ToList<vLogerMenu>();
comboBox1.DisplayMember = "MenuName";
comboBox1.ValueMember = "MenuID";
但是在程序中 用一个combobox保存其值时.结果为
MenuName
1
1
1
1
1
另:
如不使用视图,对单表查询
DBEntities myDBEntities = new DBEntities();
var result = from q in myDBEntities.menu
select q;
comboBox_Menu.DataSource = result.ToList<Menu>();
comboBox1.DisplayMember = "MenuName";
comboBox1.ValueMember = "MenuID";
则combobox元素为:
MenuName
1
2
3
4
5
为什么会这样呢..?
似乎在取 视图的时候 出现覆盖.
然后我又进行了修改
DBEntities myDBEntities = new DBEntities();
var result = from q in myDBEntities.vLogerMenu
//select new { q.LogerID, q.MenuID, q.MenuName };
select q;
//comboBox1.DataSource = result.ToList<vLogerMenu>();
List<vLogerMenu> vLogerMenu_List = new List<vLogerMenu>();
foreach (var a in result)
{
vLogerMenu vLogerMenu_Temp = new vLogerMenu();
vLogerMenu_Temp.MenuID = a.MenuID;
vLogerMenu_Temp.MenuName = a.MenuName;
vLogerMenu_List.Add(vLogerMenu_Temp);
}
comboBox1.DataSource = vLogerMenu_List;
comboBox1.DisplayMember = "MenuID";
comboBox1.ValueMember = "MenuID";
其结果为:
MenuName
1
2
3
4
5
为什么 直接 绑定视图的时候会 出现 重复现象呢?
------解决方案--------------------
没听说过表和表之间有左右关联的。。。。
------解决方案--------------------
如果设置断点Debug不能找出问题,
那就用SQL Server Profiler跟踪一下生成的ESql吧,看看Sql有什么不同
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
LINQ 方法参数看不懂
怎么我在编译器写代码LINQ方法参数提示看不懂啊,比如 GroupBy(Of TSource, TKey)(IQueryable(Of TSource), E...
-
LINQ 对GridView分页排序处理?
我始终觉得LINQ对gridview分页排序操作很麻烦,请问有什么好的办法啊?还有以前写SQL语句,调试时候很方...
-
Mvc强类型列表如何修改字段
我用这个循环了一个文章列表,但是我要把文章内容字段的html代码给剔除掉,请问怎么做
------解决方案-...
-
Linq查询List<T>无值
List<Wisesoft.Tool.Log.Model.LoginLogInfo> listLog = new List<Wisesoft.Tool.Log.Model.LoginLogInfo>(...
-
SQL中的 is null 在linq中怎么表示
各位大哥,小弟想问下在 sql中的 where coulumn is null这个语句用linq应该怎么写,急用
------...
-
linq + GridView页面数据没有显示
protected void Page_Load(object sender, EventArgs e)
{
//Database db = new...
-
linq to sql 查询的问题,求助
对linq 还不是很熟悉,接触linq了,就有一种冲动要使用它,不用ado了,可是前段时间写一个linq 查询语句的...
-
请教各位 创建SQL server数据库的查询表达式
各位,我那本教程上说,创建一DBML文件,之后什么“创建一个SQL server数据库类型的数据源...
-
类型“System.String[]”不支持比较运算符。
return dc.Content.Where(c => c.Status == status && c.AuditList.Split(',')...
-
请教几个问题linq和数据绑定
1.用vs的O/R设计器生成的Linq to sql 的对象模型会为每个类添加 PropertyChangedEventHandler Prope...