Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.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/9/ruby-on-rails-3/4.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# 复合c1 Odata页面结果_C#_Odata_Asp.net Web Api_C1 Cms - Fatal编程技术网

C# 复合c1 Odata页面结果

C# 复合c1 Odata页面结果,c#,odata,asp.net-web-api,c1-cms,C#,Odata,Asp.net Web Api,C1 Cms,我很难将Odata与PageResult结合使用。 如果我设置[QueryablePageSize=5],我会得到5个项目的正确结果 但是没有nextlink,这是我期望的,所以我可以得到第2页的下一个结果 复合C1使用它自己的XML数据存储,我认为这是问题的核心 我为ODataV3找到的所有示例都是使用 告诉我只需使用[QueryablePageSize=5],它就可以开箱即用。 但它们都使用实体框架,我不这么认为,我认为这就是它的缺陷所在 这是我的结果,没有nextlink: <Dat

我很难将Odata与PageResult结合使用。 如果我设置[QueryablePageSize=5],我会得到5个项目的正确结果

但是没有nextlink,这是我期望的,所以我可以得到第2页的下一个结果

复合C1使用它自己的XML数据存储,我认为这是问题的核心

我为ODataV3找到的所有示例都是使用 告诉我只需使用[QueryablePageSize=5],它就可以开箱即用。 但它们都使用实体框架,我不这么认为,我认为这就是它的缺陷所在

这是我的结果,没有nextlink:

<Data>
    <ImageItem>
        <Id>1eeb46e3-1446-45e8-bab2-03ccb637b2ab</Id>
        <Title/>
        <SubTitle/>
    </ImageItem>
    <ImageItem>
        <Id>1eeb46e3-1446-45e8-bab2-03ccb637b2ab</Id>
        <Title/>
        <SubTitle/>
    </ImageItem>
    <ImageItem>
        <Id>1eeb46e3-1446-45e8-bab2-03ccb637b2ab</Id>
        <Title/>
        <SubTitle/>
    </ImageItem>
    <ImageItem>
        <Id>1eeb46e3-1446-45e8-bab2-03ccb637b2ab</Id>
        <Title/>
        <SubTitle/>
    </ImageItem>
    <ImageItem>
        <Id>1eeb46e3-1446-45e8-bab2-03ccb637b2ab</Id>
        <Title/>
        <SubTitle/>
    </ImageItem>
</Data>
Request.GetNextPageLink返回?$skip=5

变量filtered具有19个imageitems的列表。并进行过滤。计数也返回19

有人有什么建议甚至解决方案吗? 复合C1安装是一个简单的安装,没有额外的处理程序。
复合C1 4.2更新1,版本号4.2.5287.17495

尝试删除[Queryable]属性,它会阻止正确呈现PageResult响应。

感谢您的建议,但没有成功。我用我现在的代码更新了这个问题。我设置了20个硬编码,只是为了确保分页工作正常。

    public class ImagesController : ApiController
    {
        public PageResult Get(ODataQueryOptions options)
        {
            using (var c = new DataConnection())
            {
                var querySettings = new ODataQuerySettings() { PageSize = 20 };

                var filtered = options.ApplyTo(c.Get(), querySettings).Cast().ToList().AsQueryable();
                return new PageResult(filtered, Request.GetNextPageLink(), 20);
            }
        }
    }