下面的代码有什么问题?:(
int? parentFolderId = null;
if( this.Request.QueryString ["folderId"] != null )
parentFolderId = Convert.ToInt32( this.Request.QueryString ["folderId"] );
f = ( from x in this.EntityDataContext.folders
where x.parent_id == parentFolderId
select x ).ToList();
它什么也不回!尽管数据库中有父id为空的记录。
但是,当我显式地声明为空时,它就工作了!
f = ( from x in this.EntityDataContext.folders
where x.parent_id == null
select x ).ToList();
有什么问题吗?
PS:我讨厌使用实体框架来处理mysql。。。。每件简单的事情都有无数的问题!
最佳答案
远射
f = ( from x in this.EntityDataContext.folders
where ((parentFolderId!=null && x.parent_id == parentFolderId)
||(parentFolderId==null && x.parent_id == null))
select x ).ToList();
是的,这是有线的,我想你的第一个例子应该与MsSql工作得很好。
也许是时候向Linq to MySql的作者提交一个bug了?
关于mysql - Entity Framework -MySQL-空比较!,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1960687/