Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用谓词表达式作为参数获取对api的请求_Javascript_Asp.net Mvc_Linq_Entity Framework_Api - Fatal编程技术网

Javascript 使用谓词表达式作为参数获取对api的请求

Javascript 使用谓词表达式作为参数获取对api的请求,javascript,asp.net-mvc,linq,entity-framework,api,Javascript,Asp.net Mvc,Linq,Entity Framework,Api,是否可以使用谓词表达式作为HTTPGET请求(到MVCAPI控制器)的参数 背景:我正在尝试构建一个租车网络应用程序。 使用MSsql for db、EntityFramework(代码优先)、用于(通用)CRUD函数的存储库和MVCAPI控制器 我的目标是使用谓词linq表达式通过api控制器向db发送查询。 守则: 存储库: public IQueryable<T> Search<T>(Expression<Func<T, bool>> pre

是否可以使用谓词表达式作为HTTPGET请求(到MVCAPI控制器)的参数

背景:我正在尝试构建一个租车网络应用程序。 使用MSsql for db、EntityFramework(代码优先)、用于(通用)CRUD函数的存储库和MVCAPI控制器

我的目标是使用谓词linq表达式通过api控制器向db发送查询。 守则:

存储库:

public IQueryable<T> Search<T>(Expression<Func<T, bool>> predicate) where T : class, IDataEntity
    {
        return _context.Set<T>().Where(predicate);
    }
(Im使用agulars$http进行ajax请求,类似于$.getJSON)

是否可以通过ajax(get)请求将谓词表达式发送给希望获取linq表达式作为参数的api控制器

如果是,怎么做?
如果没有,实现我的目标的正确/适当方式是什么

我不确定这对您是否有用,但您可以使用。通过这种方式,您可以轻松地在运行时构造查询并使用字符串进行查询

找到更多信息。

这可能会有帮助:可能与
public HttpResponseMessage Get(Expression<Func<Car, bool>> predicate)
    {
        using (IRepository Manager = Factories.Factory.GetRepository())
        {
            var CarList = Manager.Search<Car>(predicate)
                .Select(x => new CarDTO()
                {
                    ...
                })
                .ToList();
            return Request.CreateResponse<List<CarDTO>>(HttpStatusCode.OK, CarList);
        }
    }
$http.get("/api/CarApi"+"??????",{params:{ ??????? }})
            .success(function (result) {
                $scope.filteredCarsList = result;
                ...
            })
            .error(function (result) {
                ...
            });