RavenDB请求URL太长

时间:2012-03-16 15:31:34

标签: c# url request ravendb

我收到请求网址太长的问题,并想知道是否有人对如何改进我的内容有任何想法......

在这里,我返回一个属性id的列表

var propertiesAlreadySentQuery = Session.Query<Domain.ClientProperty>().Where(x => x.ClientId == clientid);
var propertiesAlreadySent = new int[propertiesAlreadySentQuery.Count()];
var t = 0;
foreach (var i in propertiesAlreadySentQuery)
{
    propertiesAlreadySent[t] = i.PropertyId;
    t++;
}

现在,我要做的是返回一个属性列表并过滤掉那些已经发送的属性(因此命名!)

var results = from p in Session.Query<Domain.Property>()
                                          where
                                              (p.Development.Latitude >= minLat && p.Development.Latitude <= maxLat) &&
                                              (p.Development.Longitude >= minLong && p.Development.Longitude <= maxLong)
                                          select p;

var propertiesNotSent = results.Where(x => !x.PropertyId.In<Int32>(propertiesAlreadySent));

问题是,在propertiesAlreadySent中返回的属性id的数量可能非常多,而且我的请求URL太长了。

我有什么想法可以改进这个以避免遇到这个问题?

由于

1 个答案:

答案 0 :(得分:1)

马特 您可以在In()元素中使用的项目数量受限。 我不明白你想要做什么,你能解释你的代码背后的意图吗?