如何使用linq选择所有内容?

时间:2013-03-06 15:05:05

标签: c# json linq

我正在使用JSON为我的iOS应用程序创建一些服务(我仍然是那个洞穴服务故事的菜鸟)我的问题:

是否有可能使用Linq选择所有内容,就像在SQL中使用*一样?

我已经获得了where子句,所以我在漏洞故事中付出了一些努力

   [DataContract]
    public class PublicVacationCalendarEntry
    {
        [DataMember]
        public string Description { get; set; }

        [DataMember]
        public DateTime FromDate { get; set; }

        [DataMember]
        public DateTime ToDate { get; set; }


    }
    [DataContract]
    public class PublicVacationCalenderEntryList
    {
        [DataMember]
        public List<PublicVacationCalendarEntry> PVEntries { get; set; }
    }
}
我发布错误的代码sry sry sry 在这个例子中,我没有像userId

这样的东西

这可能只是一些简单的变化吗?

感谢您的帮助和快速回答!

3 个答案:

答案 0 :(得分:12)

是的,这是可能的:

var annalVacation =  from vd in ctx.HtVacationDays
                     where vd.UserId == userId
                     select vd

或(我更喜欢的版本)

var annalVacation =  ctx.HtVacationDays.Where(x => x.UserId == userId);

答案 1 :(得分:7)

你可以写

from vd in ctx.HtVacationDays
where vd.UserId == userId
select vd

由于vd表示,如果您愿意,可以从HtVacationDays中选择一行,您可以选择它(select vd),这将与SELECT *一样。< / p>

另请注意,您可以使用lambda语法(在代码中混合了.Where子句,如下所示:

var result = ctx.HtVacationDays.Where(x => x.UserId == userId); //Select is optional here.

答案 2 :(得分:2)

如果您需要自动将类的一个实例转换为另一个类,请尝试使用Automapper

https://github.com/AutoMapper/AutoMapper

        var annalVacation = ctx.HtVacationDays.Where(x => x.UserId == userId);