Facebook Sharer
选择您要替换的背景颜色:
【农历新年】背景图片:
个性化设定
 注册  找回密码
查看: 2204|回复: 19
打印 上一主题 下一主题

LINQ的问题

[复制链接]

4

主题

0

好友

476

积分

翡翠长老

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

跳转到指定楼层
1#
发表于 2009-9-17 01:37 AM |只看该作者 |正序浏览
例如这一段code

public IList<DAL.Salary> GetSalaryByUserAndDate(string UserId, string Month, string Year)
        {
            try
            {
                IList<DAL.Salary> ilSalary = new List<DAL.Salary>();

                // using (HRS2009Entities context = new HRS2009Entities())
                //{
                var query = from S in context.Salary
                            where S.User.UserId == UserId && S.Month == Month && S.Year == Year
                            select S;



                foreach (var SalaryItem in query)
                {
                    ilSalary.Add(SalaryItem);
                }
                //}

                if (ilSalary != null && ilSalary.Count != 0)
                    return ilSalary;
                else
                    return null;
            }
            catch (Exception ex)
            {
                return null;
            }
        }

以上那个query我只能在S.User.UserId == UserId && S.Month == Month && S.Year == Year
才能拿到资料
可是当我多出了其他状况
例如说我现在不要search单独的user我要search month 和 year的时候,或者单单一个month的时候,除了写多一个method之外还有什么办法吗??
还是在一个method里面可以select多个query
请各位前辈帮忙解答,由于我只是linq的入门新手,请多多赐教

我有想过用case可是如果是search by month而已,那么user id 和 year pass回去的资料就是Null了,在linq里面可以成立吗??

[ 本帖最后由 我是大猪头 于 2009-9-17 01:39 AM 编辑 ]




收藏收藏0

13

主题

0

好友

2113

积分

白金长老

Rank: 10

20#
发表于 2009-9-17 08:38 PM |只看该作者
send 你的code 给我看看


回复

使用道具 举报

4

主题

0

好友

476

积分

翡翠长老

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

19#
发表于 2009-9-17 08:27 AM |只看该作者
试过了,还是不可以
show不出资料


回复

使用道具 举报

13

主题

0

好友

2113

积分

白金长老

Rank: 10

18#
发表于 2009-9-17 03:12 AM |只看该作者
你直接return 那个 iqueryable<salary>
那两个不用咯


回复

使用道具 举报

4

主题

0

好友

476

积分

翡翠长老

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

17#
发表于 2009-9-17 02:44 AM |只看该作者
原帖由 goodday 于 2009-9-17 02:33 AM 发表
能跑吗??

解决你的先 后面才解释


不能run在
ilSalary.Add(SalaryItem);
这里马上出一个红线给我
还有ilSalary.Count != 0
这里也是


回复

使用道具 举报

13

主题

0

好友

2113

积分

白金长老

Rank: 10

16#
发表于 2009-9-17 02:33 AM |只看该作者
能跑吗??

解决你的先 后面才解释


回复

使用道具 举报

4

主题

0

好友

476

积分

翡翠长老

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

15#
发表于 2009-9-17 02:31 AM |只看该作者
Iqueryable
是什么来的??


回复

使用道具 举报

13

主题

0

好友

2113

积分

白金长老

Rank: 10

14#
发表于 2009-9-17 02:25 AM |只看该作者
public IList<DAL.Salary> GetSalaryByUserAndDate(string UserId, string Month, string Year)

public IQueryable<DAL.Salary> GetSalaryByUserAndDate(string UserId, string Month, string Year)


回复

使用道具 举报

13

主题

0

好友

2113

积分

白金长老

Rank: 10

13#
发表于 2009-9-17 02:23 AM |只看该作者
public IList<DAL.Salary> GetSalaryByUserAndDate(string UserId, string Month, string Year)
        {
            try
            {
                iQueryable<DAL.Salary> ilSalary = null;

                // using (HRS2009Entities context = new HRS2009Entities())
                //{
                ilSalary  = from S in context.Salary
                            where S.User.UserId == UserId && S.Month == Month && S.Year == Year
                            select S;



                //foreach (var SalaryItem in ilSalary )
                //{
                //    ilSalary.Add(SalaryItem);
                //}
                //}

                //if (ilSalary != null && ilSalary.Count != 0)
                    return ilSalary;
                //else
                 //   return null;
            }
            catch (Exception ex)
            {
                return null;
            }
        }
试这个


回复

使用道具 举报

4

主题

0

好友

476

积分

翡翠长老

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

12#
发表于 2009-9-17 02:23 AM |只看该作者
原帖由 goodday 于 2009-9-17 02:20 AM 发表
IList ilSalary = new List();

IList ilSalary = null;


那我要怎样get资料


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

JBTALKS.CC |联系我们 |隐私政策 |Share

GMT+8, 2024-10-26 04:20 AM , Processed in 0.110497 second(s), 27 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

Ultra High-performance Dedicated Server powered by iCore Technology Sdn. Bhd.
Domain Registration | Web Hosting | Email Hosting | Forum Hosting | ECShop Hosting | Dedicated Server | Colocation Services
本论坛言论纯属发表者个人意见,与本论坛立场无关
Copyright © 2003-2012 JBTALKS.CC All Rights Reserved
合作联盟网站:
JBTALKS 马来西亚中文论坛 | JBTALKS我的空间 | ICORE TECHNOLOGY SDN. BHD.
回顶部