首页新闻找找看学习计划

ef绑定数据问题!

0
悬赏园豆:10 [已解决问题] 解决于 2016-11-09 17:18

这是错误信息,StateText是一个从另一个表得到的值源代码在这。这是从Scmquote实体类引过来的。这个

StatusText可以绑定reparter  但是不能用来做筛选?为什么 ,之前么接触过ef这种 比较懵 求帮助
   public string StatusText
        {
            get
            {
                if (SCMQuoteId == null) return "等待生成询价单";
                if (SCMQuoteParityId == null) return "订单已关闭";
                return SCMQuote.StatusText;
            }
        }

筛选代码

    if (ddlState.SelectedItem.Text != "全部")
                    data = data.Where(i => i.StatusText == ddlState.SelectedItem.Text);
我想和这个世界谈谈的主页 我想和这个世界谈谈 | 初学一级 | 园豆:61
提问于:2016-11-07 10:15
< >
分享
最佳答案
0

你的data是什么?

收获园豆:10
顾晓北 | 大侠五级 |园豆:9520 | 2016-11-09 16:46

data就是一个实体类

我想和这个世界谈谈 | 园豆:61 (初学一级) | 2016-11-09 16:52

@我想和这个世界谈谈: 你这样,先用一个变量存一下那个下拉框的text,然后在where里面用那个变量,别直接用下拉框。。。

顾晓北 | 园豆:9520 (大侠五级) | 2016-11-09 16:54

@顾晓北: 不可以的,还是报错。主要是statusText这个字段是自定义的不是数据库里的 好像不能用 但是可以绑定

我想和这个世界谈谈 | 园豆:61 (初学一级) | 2016-11-09 17:00

@我想和这个世界谈谈: 不在数据库里?你在跟我开玩笑吗???不在数据库里你让ef怎么筛选?

顾晓北 | 园豆:9520 (大侠五级) | 2016-11-09 17:02

@顾晓北: 所以啊,就想问下能不能根据这个在实体类自定义的字段进行筛选呢?

我想和这个世界谈谈 | 园豆:61 (初学一级) | 2016-11-09 17:03

@我想和这个世界谈谈: 看这个意思,你的这个StatusText也是数据库中的某些字段判断得来的???

顾晓北 | 园豆:9520 (大侠五级) | 2016-11-09 17:05

@顾晓北:

是的,但是是通过两个表的字段判断出来的!  一部分是直接引用SCMQuote里的状态字段判断还有两个状态是根据图上的字段判断的!

我想和这个世界谈谈 | 园豆:61 (初学一级) | 2016-11-09 17:08

@我想和这个世界谈谈: 那你完全可以在数据库里也这么判断啊。。。数据库本身可以用case when,你找相关的资料不就行了?

顾晓北 | 园豆:9520 (大侠五级) | 2016-11-09 17:09

@顾晓北: 你意思是在数据库里新加一个字段?

我想和这个世界谈谈 | 园豆:61 (初学一级) | 2016-11-09 17:11

@我想和这个世界谈谈: 理解错误,sqlserver确实可以增加一个没有数据类型定义,根据其他字段得出的字段,比如,一个CreateDate字段是CreateTime的日期部分。但我说的不是这个意思,我的意思是你的if既然也是这个表的其他字段,那么可以用其他思路来做,生成类似case when语句是一种。。。

你自己判断一下也可以,比如:

if(ddlState.SelectedItem.Text==“等待生成询价单”)

data=data.where(i=>i.SCMQuoteId==null)

顾晓北 | 园豆:9520 (大侠五级) | 2016-11-09 17:15

@顾晓北: 好吧,我再看看,谢谢你的回答。

我想和这个世界谈谈 | 园豆:61 (初学一级) | 2016-11-09 17:17
其他回答(1)
0

i.StatusText == ddlState.SelectedItem.Text

左边的只能是数据库字段.不能是自定义属性.

吴瑞祥 | 园豆:28731 (高人七级) | 2016-11-07 16:58

 那有什么办法过滤筛选这个自定义属性吗?

清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册