C# 如何在odata中正确取消操作

C# 如何在odata中正确取消操作,c#,json,asp.net-web-api,odata,C#,Json,Asp.net Web Api,Odata,当从客户端取消加载时,我想取消加载实体。我有一个控制器,它看起来像这样: public IHttpActionResult Get(CancellationToken cancellationToken) { IQueryable<Product> products = Context.GetEntities<Product>(); return Ok(); } List<Product> Ge

当从客户端取消加载时,我想取消加载实体。我有一个控制器,它看起来像这样:

    public IHttpActionResult Get(CancellationToken cancellationToken)
    {
        IQueryable<Product> products = Context.GetEntities<Product>();

        return Ok();
    }
    List<Product> GetInsTance(IQueryable<Product> products,CancellationToken cancellationToken)
    {
        var list = new List<Product>();
        foreach (var item in products)
        {
            cancellationToken.ThrowIfCancellationRequested();
            list.Add(item);
        }
        return list;
    }
public IHttpActionResult获取(CancellationToken CancellationToken)
{
IQueryable products=Context.GetEntities();
返回Ok();
}
列出GetInsTance(IQueryable产品、CancellationToken CancellationToken)
{
var list=新列表();
foreach(产品中的var项目)
{
cancellationToken.ThrowIfCancellationRequested();
列表。添加(项目);
}
退货清单;
}
当它被取消时,我抛出异常。所以,我想用不同的方式取消。如果我将
IQuerable
设置为
OK
方法会怎么样?行吗?还有别的办法吗