请求无法完成。 PullAsync的(错误请求)

时间:2017-03-05 05:42:31

标签: c# azure

我有一个使用SQLiteStore的Azure应用程序,但每当我将PullAsync的查询更改为具有Where子句的内容时,它就会给我一个"请求无法完成。 (错误的要求)"异常。

数据库中存在现有数据。

使用:

await syncTable.PullAsync("id", syncTable.CreateQuery(), false, new CancellationToken(), new PullOptions());

不起作用:

await syncTable.PullAsync("id", syncTable.Where(w => w.otherTableId=="dkdkdkdkd"), false, new CancellationToken(), new PullOptions());

不起作用:

await syncTable.PullAsync("id", syncTable.CreateQuery().Where(w => w.otherTableId=="dkdkdkdkd"), false, new CancellationToken(), new PullOptions());

是什么导致这种情况?

1 个答案:

答案 0 :(得分:1)

我能够通过添加Column属性并更改" otherTableId"来完成这项工作。到" OtherTableId"在服务器端代码。

不确定为什么服务器端代码需要大写的O" OtherTableId"

public class SomeTable : EntityData
{
        [Column("otherTableId")]
        public string OtherTableId { get; set; }
}

Fiddler Trace:

HTTP / 1.1 400错误请求 内容长度:151 Content-Type:application / json;字符集= utf-8的 服务器:Microsoft-IIS / 8.0 X-Powered-By:ASP.NET 日期:2017年3月10日星期五03:36:28 GMT

{" message":" URI中指定的查询无效。找不到名为' OtherTableId' on type' Backend.DataObjects.SomeTable'。"}

获取https://XXXX.azurewebsites.net/tables/SomeTable?$ filter =((otherTableId%20eq%20' dkdkdkdkd')%20和%20(updatedAt%20ge%20datetimeoffset' 1970-01-01T00%3A00%3A00 0.0000000%2B00%3A00&#39))及$的OrderBy = updatedAt&安培; $跳过= 0&安培; $顶部= 50&安培; __ includeDeleted =真