小编Her*_*rdy的帖子

在ASP.Net Core中发布表单数据时出现400状态错误

我正在开发一个ASP.Net Core 2.0应用程序并在Linux/Nginx/Kestrel上运行它.

在开发环境(Windows 10)上,一切运行顺利.此外,在项目目录中使用"dotnet run"运行应用程序时.

在生产环境(Debian 8/Kestrel)上,所有表单POST都失败并显示HTTP状态码400(错误请求),而不会在控制台中提示任何错误,而表单GET请求运行正常.控制台中会提示所有其他消息(警告,错误).我正在使用"dotnet .dll"运行应用程序.

有人能指出我解决问题的方向吗?

form-post http-status-code-400 asp.net-core

7
推荐指数
0
解决办法
1441
查看次数

如何为客户使用谓词 where Entity Framework 中的 LINQ 查询,扩展方法“按词搜索”

我想使用谓词构建自定义 linq 查询。

而不是使用静态Where子句,即...

public IEnumerable<Entities.BusinessDirectory.BDEntity> Search(string searchExpression)
{
    var db = new ApplicationDbContext();
    return db.BDEntities
             .Where(x => searchExpression.Split(' ').Any(y => x.Value.Contains(y)));
}
Run Code Online (Sandbox Code Playgroud)

...我正在使用泛型方法扩展 DbContext Search(predicate, searchExpression),它与静态方法具有相同的效果(见上文)

public static class DbContextExtensions
{
    public static IEnumerable<T> Search<T>(
        this DbSet<T> dbSet, 
        Expression<Func<T, object>> predicate, 
        string searchExpression)
      where T : class, new()
    {
        //Experimental
        return dbSet
            .Where(x => searchExpression.Split(' ').Any(y => predicate.Contains(x)));
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,我收到以下错误:

错误 6 实例参数:无法从“System.Linq.Expressions.Expression>”转换为“System.Linq.ParallelQuery” Extensions.cs

linq search predicate where

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