标签: linq-to-sql

Linq == null vs IsNullOrEmpty - 不同或相同?

LinqLinq to Sql更准确:是那里的之间的差异== nullIsNullOrEmpty在下面的查询?

From a in context.SomeTable
where a.SomeId.Equals(SomeOtherId)
&& a.SomeOtherColumn == null
Select new .....
Run Code Online (Sandbox Code Playgroud)

&

From a in context.SomeTable
where a.SomeId.Equals(SomeOtherId)
&& string.IsNullOrEmpty(a.SomeOtherColumn)
Select new .....
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-sql

0
推荐指数
1
解决办法
5538
查看次数

如果没有记录,如何选择sum或0?

using (AdviserReserveEntities Adv=new AdviserReserveEntities())
{
   decimal sum= Adv.Credits.Where(u => u.UserIdRef == 2).Sum(a => a.Amount);
}
Run Code Online (Sandbox Code Playgroud)

如果在发生异常后没有找到记录:

转换为值类型"Int64"失败,因为具体化值为null.结果类型的泛型参数或q`uery必须使用可空类型.

如果没有记录,如何返回0?

c# entity-framework linq-to-sql

0
推荐指数
1
解决办法
1214
查看次数

Linq表达式区分大小写?

到目前为止我所读到的Linq(以及C#)已经进行了区分大小写的检查.

如何使其不敏感?

这是我的代码,它返回0行,我在数据库中有一条记录

bool result = Employee.SearchBy(x => x.Name.Contains("johN schulZ"));
Run Code Online (Sandbox Code Playgroud)

这返回true:

bool result = Employee.SearchBy(x => x.Name.ToLower().Contains("johN schulZ".ToLower()));
Run Code Online (Sandbox Code Playgroud)

后一个解决方案正在运行,但我想知道是否有更方便的方法.

c# linq linq-to-sql

0
推荐指数
1
解决办法
279
查看次数

在linq连接谓词中使用"和"

我想在linq中的连接谓词中使用两个字段.如何添加其他字段?

    var Result = from Period in context.PeriodCosts
                 join Name in context.Name on Period.ID equals Name.PeriodID 
                /*"Problem is here ==> */and   
                 Period.CCID equals Name.CCID"
                 select Name;
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-entities linq-to-sql c#-4.0

0
推荐指数
1
解决办法
401
查看次数

如何解决问题"无法将表达式转换为SQL并且无法将其视为本地表达式".

我的代码如下:

void Main()
{
    var q = from a in Applicants
             where(a.Claims.Any())
             select a.Claims.Sum(c => c.TotalClaimAmount());


    q.Dump();
}

public static class MyExt
{
    public static decimal TotalClaimAmount(this Claim c)
    {
        var t = c.Accommodations.Sum(a => a.AmountClaimed) +
                c.MealAllowances.Sum(ma => ma.AmountClaimed) +
                c.Meals.Sum(m => m.AmountClaimed) +
                c.Mileages.Sum(mi => mi.AmountClaimed) +
                c.Others.Sum(o => o.AmountClaimed) +
                c.ParkingTransits.Sum(pt => pt.AmountClaimed) +
                c.Travels.Sum(tr => tr.AmountClaimed);

        return (decimal)t;
    }
}
Run Code Online (Sandbox Code Playgroud)

当我在LinqPad中运行时得到以下问题:

InvalidOperationException:无法将表达式'a.Claims.Sum(c => c.TotalClaimAmount())'转换为SQL,并且无法将其视为本地表达式.

请帮帮我.非常感谢

c# linq linq-to-entities linqpad linq-to-sql

0
推荐指数
1
解决办法
4343
查看次数

如何使用LINQ选择MAX ID?

从下面的sql数据中,我想采用一个独特的EmpId,即最大ID.

ID  EmpId  DeptId
1   1002   XY
5   1100   ABC
6   1109   EF
7   1100   MN
9   1100   DE
10  1250   CE
11  1250   DJ
12  1100   DE
Run Code Online (Sandbox Code Playgroud)

结果如下所示:

ID  EmpId  DeptId
1   1002   XY
6   1109   EF
11  1250   DJ
12  1100   DE
Run Code Online (Sandbox Code Playgroud)

这个LINQ应该如何构建?

c# linq linq-to-sql

0
推荐指数
1
解决办法
484
查看次数

如果在运行LINQ后没有匹配,变量会保持什么

[WebMethod]
public List<FavoritesTO> getFavorites(string username)
{
    using (FavoritesDataContext db = new FavoritesDataContext ())
    {
        var query = from row in db.Favorites
                    where username == row.username
                    select row.imdbId;
        // here
    }
}
Run Code Online (Sandbox Code Playgroud)

在标记为此处的区域中,查询变量将保留什么,例如,如果我的表中没有与传递给函数的用户名匹配的用户名?

c# linq linq-to-sql webmethod

0
推荐指数
1
解决办法
94
查看次数

LINQ查询中的实体GetType

我有一个LINQ查询,想要选择我的实体类型,如下所示:

    static void Main(string[] args)
    {
        using (var currentContext = new MyContext())
        {
            var x = (from c in currentContext.GeneralAccounts
                    select new  { CType = c.GetType() }).ToList();
        }
    }
Run Code Online (Sandbox Code Playgroud)

但是这个查询会出错:

错误:LINQ to Entities无法识别方法'System.Type GetType()'方法,并且此方法无法转换为商店表达式.

c# linq linq-to-entities entity-framework linq-to-sql

0
推荐指数
2
解决办法
4213
查看次数

linq group by statement不工作

我有一个linq声明如下,

var v1 = from s in context.INFOONEs group s by s.DATET into xyz select xyz;
Run Code Online (Sandbox Code Playgroud)

我想跟着显示结果

foreach (var x in v1)
{
    Console.WriteLine(x.);
}
Run Code Online (Sandbox Code Playgroud)

但是当我输入x时,intellisence没有显示列.

我做错了什么?什么是实现我想要实现的目标的正确方法?

谢谢

.net c# linq entity-framework linq-to-sql

0
推荐指数
1
解决办法
113
查看次数

限制Linq到SQL分页查询的语句

是否有可能在Linq SQL(ASP.NET)中执行此SQL语句

Select * form users limit 23,100
Run Code Online (Sandbox Code Playgroud)

没有使用像Loop,For,....

感谢回复.

c# sql linq asp.net linq-to-sql

0
推荐指数
1
解决办法
812
查看次数