Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.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/7/sql-server/27.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
C# Odata未在SQL级别应用筛选器_C#_Sql Server_Entity Framework_Odata - Fatal编程技术网

C# Odata未在SQL级别应用筛选器

C# Odata未在SQL级别应用筛选器,c#,sql-server,entity-framework,odata,C#,Sql Server,Entity Framework,Odata,我有一个基本的Odata端点,即使用实体框架查询数据库。 当使用一些基本过滤器查询端点时,它似乎工作正常,但我注意到一个令人担忧的行为。下面的例子将说明我的担忧 Http访问: www.api.com?$filter=SomeField eq(某些唯一值) 这将导致以下代码: [EnableQuery] public IQueryable<vwResultObject> Get() { try { var r

我有一个基本的Odata端点,即使用实体框架查询数据库。 当使用一些基本过滤器查询端点时,它似乎工作正常,但我注意到一个令人担忧的行为。下面的例子将说明我的担忧

Http访问:

www.api.com?$filter=SomeField eq(某些唯一值)

这将导致以下代码:

 [EnableQuery]
    public IQueryable<vwResultObject> Get()
    {
        try
        {
            var r db.vwResultObject;
            var b = r.toList<vwResultObject>();
            return r;

        }
        catch (System.Exception ex)
        {
            throw;
        }
    }
[启用查询]
公共IQueryable Get()
{
尝试
{
var r db.vwResultObject;
var b=r.toList();
返回r;
}
catch(System.Exception-ex)
{
投掷;
}
}

这段代码完全按照预期工作,返回值是数据库中唯一的一行,与unique字段匹配。然而,我担心的是列表“b”的长度等于表中的总行数。这是否意味着过滤器不应用于sql级别?我错过什么了吗?过滤器没有应用到SQL级别,这似乎非常愚蠢,我无法相信这是我们的初衷。我一定是犯了个错误。

不知羞耻的自暴自弃你找到解决办法了吗?