相关疑难解决方法(0)

为什么要使用Expression <Func <T >>而不是Func <T>?

我理解lambdas FuncAction代表们.但表达方式让我很难过.在什么情况下你会使用一个Expression<Func<T>>而不是一个普通的老年人Func<T>

c# lambda delegates expression-trees

910
推荐指数
10
解决办法
21万
查看次数

将func作为Linq中的参数传递给实体和"内部.NET Framework数据提供程序错误1025"错误

我们有一个名为Task的类:

public partial class Task : EntityObject
{
    public EntityCollection<TaskUser> TaskUsers { get {...} set{...} } 
}
Run Code Online (Sandbox Code Playgroud)

它有一个名为TaskUsers的导航属性,其中包含附加到此taks的用户:

public partial class TaskUser : EntityObject
{
    public User User { get {...} set {  } }
}
Run Code Online (Sandbox Code Playgroud)

每个TaskUser对象都有User对象.

我们得到了IQueryable<Task> tasks.我们希望找到分配给ID = 1的用户的任务.当我们使用时

tasks.Where(t => t.TaskUsers.Any(a => a.User.ID == 1))
Run Code Online (Sandbox Code Playgroud)

一切正常.当我们使用

Func<TaskUser, bool> function = a => a.User.ID == 1;
return tasks.Where(t => t.TaskUsers.Any(function));
Run Code Online (Sandbox Code Playgroud)

我们得到了很好的'Internal .NET Framework Data Provider error 1025'错误 为什么?我想使用Expression类构建更复杂的过滤器,但如果我不能通过简单Func,则无法完成.我该怎么办?

编辑

也许 …

lambda linq-to-entities entity-framework

18
推荐指数
1
解决办法
5325
查看次数

Using Count() function throws “Internal .NET Framework Data Provider error 1025.”

This is my code:

var icdCodes = DbContext.MasterIcd.Select(x => x.IcdCode).AsQueryable();
var count = icdCodes.Where(x => !x.Any(char.IsDigit)).Count();
Run Code Online (Sandbox Code Playgroud)

I'm trying to find those IcdCodes which doesn't contain any characters. But using count throws the following error: “Internal .NET Framework Data Provider error 1025.”

As mentioned in Internal .NET Framework Data Provider error 1025 I'm using AsQuerable() but still getting the error. Please help

.net c# linq

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