我收到请求网址太长的问题,想知道是否有人对我如何改善自己的财产有任何想法...

在这里,我返回属性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太长。

我有什么想法可以改进它以解决此问题吗?

谢谢

最佳答案

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

关于c# - RavenDB请求URL太长,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9740123/

10-11 14:32