小编Ria*_*ert的帖子

如何使用Dqper与Linq

我正在尝试从实体框架转换为Dapper,以期提高数据访问性能.

我使用的查询是谓词形式,如"Expression>".

举个例子:

我有以下代码,我需要转换为使用Dapper.

我目前在做什么:

public async Task<List<TModel>> Get(Expression<Func<TModel, bool>> query)
{
    // this.Context is of type DbContext
    return await this.Context.Set<TModel>().Where(query).ToListAsync();
}
Run Code Online (Sandbox Code Playgroud)

我想做什么:

public async Task<List<TModel>> Get(Expression<Func<TModel, bool>> query)
{
    using (IDbConnection cn = this.GetConnection)
    {
        return await cn.QueryAsync<TModel>(query);
    }
}
Run Code Online (Sandbox Code Playgroud)

我的google-fu让我失望,有人可以帮忙.

编辑:

请注意,我找到了:https: //github.com/ryanwatson/Dapper.Extensions.Linq

但我似乎无法弄清楚如何使用它.

c# linq expression predicate dapper

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

如何将 Javascript 数组发布到 C# 元组列表?

我想知道是否有人知道如何将对象的 Javascript 数组传递给接受元组数组的 MVC 操作方法。

例子:

Javascript:

var objectArray = 
[
    { id: 1, value: "one" },
    { id: 2, value: "two" }
];

$.post('test',objectArray);
Run Code Online (Sandbox Code Playgroud)

MVC 控制器动作:

public JsonResult Test((int id, string value)[] objectArray)
{
    return Json(objectArray != null);
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,我给出的示例总是返回 false,因为 C# 代码中的 objectArray 为空。

javascript c# arrays asp.net-mvc jquery

7
推荐指数
1
解决办法
3203
查看次数

C#Dynamic Linq - 案例陈述

我在使用Dynamic Linq时遇到了一些麻烦,我希望有人可以提供帮助.我面临的问题是我需要按特定顺序排序列表.在SQL中我会写这个:

ORDER BY CASE WHEN Blah = 'blah' THEN 1 ELSE 0 END
Run Code Online (Sandbox Code Playgroud)

我将如何使用Dynamic Linq实现这一目标?

我尝试过类似的东西:

listToSort.AsQueryable().OrderBy("CASE WHEN Blah = 'blah' THEN 1 ELSE 0 END")
Run Code Online (Sandbox Code Playgroud)

但这会返回错误

类型中不存在属性或字段"CASE"

此代码在运行时作为表达式列表生成.所以我使用Dynamic Linq将这些经历用作字符串.

c# dynamic-linq

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