使用Linq中的方法

时间:2012-07-20 00:13:46

标签: c# linq

我写过这个方法来转换日期:

Public Static string ConvertDate(DateTime dt)
{
....
}

我想在Linq Code中使用这个方法:

var lst = (from L in AllList
           select new { ConvertDate(L.DateReg).ToString(), L.LastName, L.FirstName});

但上面的代码中有错误。什么是正确的代码?

3 个答案:

答案 0 :(得分:5)

定义匿名对象时,编译器必须能够为对象的属性指定名称。它可以隐式地为属性,字段和其他命名变量执行此操作,但不能对方法调用执行此操作。给它起一个名字。

var query =
    from item in AllList
    select new
    {
        DateReg = ConvertDate(item.DateReg), // lets call it DateReg
        item.LastName,
        item.FirstName,
    };

答案 1 :(得分:0)

var lst = (from L in AllList 
       select new { Date = ConvertDate(L.DateReg).ToString(), L.LastName, L.FirstName}); 

答案 2 :(得分:0)

尝试指定匿名类型的属性名称;

var lst = (from L in AllList
           select new { DateReg = ConvertDate(L.DateReg).ToString(), LastName =L.LastName, FirstName = L.FirstName});