小编Adu*_*cci的帖子

SQL to Entity Framework Count Group-By

我需要将此SQL语句翻译成Linq-Entity查询...

SELECT name, count(name) FROM people
GROUP by name
Run Code Online (Sandbox Code Playgroud)

sql linq-to-entities entity-framework group-by count

76
推荐指数
4
解决办法
10万
查看次数

为什么不能在嵌套的本地范围中声明重复的变量名?

根据最近的这个问题,我不明白提供的答案.看起来你应该可以做这样的事情,因为它们的范围不重叠

static void Main()
{
  {
    int i;
  }
  int i;
}
Run Code Online (Sandbox Code Playgroud)

此代码无法编译,并出现以下错误:

名为"i"的局部变量不能在此范围内声明,因为它会给"i"赋予不同的含义,"i"已在"子"范围内用于表示其他内容

.net c#

50
推荐指数
3
解决办法
2万
查看次数

如何在LINQ-to-SQL中编写此交叉应用查询?

我有以下表格:

create table TableA (
    Id int primary key identity,
    Key int not null
)

create table TableB (
    Id int primary key identity,
    TableA_Id int not null foreign key references TableA(Id),
    Value varchar(80) not null
)
Run Code Online (Sandbox Code Playgroud)

我想使用lambda表示法在LINQ-to-SQL中编写以下查询:

select TableA.Key, b.Value
from TableA
cross apply (
    select top 10 TableB.Value
    from TableB
    where TableA.Id = TableB.TableA_Id
    order by TableB.Value
) b
where TableA.Key between 0 and 999
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

linq linq-to-sql

19
推荐指数
1
解决办法
1万
查看次数

Expression.Call - 调用linq扩展名:FirstOrDefault,Where

我试图动态创建以下,但是我在调​​用扩展方法时遇到问题FirstOrDefault:

 using(var context = new Entities())
 {
     var list = context.Engines.Include("Cars").Select(e => e.Cars.FirstOrDefault()).ToList();
 }
Run Code Online (Sandbox Code Playgroud)

我有以下内容

Expression parameter = Expression.Parameter(typeof(Engine), "e");
Expression property = Expression.Property(parameter, "Cars");
Run Code Online (Sandbox Code Playgroud)
  • 参数= {e}
  • property = {e.Cars}

这些都很好,但是当我尝试调用FirstOrDefault方法时遇到问题:

var result = Expression.Call(typeof(Queryable), "FirstOrDefault", new type[] { typeof(Car)}, property);
Run Code Online (Sandbox Code Playgroud)

我想得到

  • 结果= {e.Cars.FirstOrDefault()}

但我得到了一个 InvalidOperationException

类型'System.Linq.Queryable'上没有通用方法'FirstOrDefault'与提供的类型参数和参数兼容.如果方法是非泛型的,则不应提供类型参数.

任何帮助将非常感激.

c# linq expression predicate dynamic

6
推荐指数
1
解决办法
5877
查看次数

Linq Query,搞砸了方法中的where子句

我有一个查询,应该返回当前报告的总小时数.下面的代码返回正确的小时总数,但不是数据库中特定用户的小时数.

    public int reportedWeekTime(int currentWeek, string username)
        {
            var totalTime = (from u in context.Users
                         from r in context.Reports
                         from w in context.Weeks
                         from d in context.Days
                         where u.Id == r.UserId && r.weekNr.Equals(currentWeek) && r.Id   == w.ReportId && w.DayId == d.Id
                         select d.Hour).DefaultIfEmpty(0).Sum();
            return totalTime;
        }
Run Code Online (Sandbox Code Playgroud)

第一种方法返回数字24,这是正确的,但正如我所说,不是针对特定用户.

我试图这样做,但它给了我0作为回报.我究竟做错了什么?

    public int reportedWeekTime(int currentWeek, string username)
        {
            var totalTime = (from u in context.Users
                         from r in context.Reports
                         from w in context.Weeks
                         from d in context.Days
                         where u.Id == r.UserId && r.weekNr.Equals(currentWeek) …
Run Code Online (Sandbox Code Playgroud)

c# silverlight linq-to-entities entity-framework windows-phone-7

5
推荐指数
1
解决办法
336
查看次数

LINQ to SQL查询在结果中具有错误的值

我有一个LINQ查询具有不正确的结果,但是当我分析生成的SQL时,SQL结果是正确的.

ApplicationsEntities context = new ApplicationsEntities();
var query = from documentation in context.Documnetations
            where documentation.Application_Version_ID == app_ver_id
            orderby documentation.Name
            select documentation;
docs = query.ToList<Documnetation>();
Run Code Online (Sandbox Code Playgroud)

我得到两个重复:"如何安装Office 2003"和"如何安装Office 2003" 在此输入图像描述

下面是配置文件SQL的输出: 在此输入图像描述

从生成的SQL中分配结果会发生什么?

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

4
推荐指数
1
解决办法
1336
查看次数

内部加入EF 4

我有2个表主和细节,在EF 4我想写一个查询来检索像这个t-sql的数据

SELECT     Table1.Table1ID, Table1.A, Table2.Table2ID, Table2.B
FROM         Table1 INNER JOIN
                  Table2 ON Table1.Table1ID = Table2.Table1Id
Run Code Online (Sandbox Code Playgroud)

我用这个:

 using(var context =new context())
  {
    var p = (from i in context.Table1.Include("Table2") select i);
  }
Run Code Online (Sandbox Code Playgroud)

但它返回table1中的行如何更改它以检索table2中的行并进行连接?

谢谢

linq-to-entities entity-framework entity-framework-4

2
推荐指数
1
解决办法
2980
查看次数

确定处理器支持哪些指令

CPU-Z能够确定处理器支持的指令.例如,以下链接显示以下说明:

MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, EM64T

有没有办法做到这一点使用.NET,WMI或者一些其他技术?

.net c# wmi

2
推荐指数
1
解决办法
1276
查看次数