У меня возникли проблемы со следующим кодом:висячие Linq запрос с Guid.Empty в котором выражение
private void DataPortal_Fetch(TaskCriteria criteria)
{
using (var ctx = ContextManager<Gimli.Data.GimliDataContext>
.GetManager(Database.ApplicationConnection, false))
{
this.RaiseListChangedEvents = false;
this.IsReadOnly = false;
IQueryable<Data.Task> query = ctx.DataContext.Tasks;
if (criteria.ReadyForPricing)
{
query = query.Where(row => row.IsPriced != true);
query = query.Where(row => row.Status == (int)TaskStatus.Closed);
query = query.Where(row => row.InvoiceId == Guid.Empty);
}
if (criteria.ReadyForInvoicing)
{
query = query.Where(row => row.IsPriced == true);
query = query.Where(row => row.Status == (int)TaskStatus.Closed);
query = query.Where(row => row.InvoiceId == Guid.Empty);
}
var data = query.Select(row => TaskInfo.FetchTaskInfo(row));
this.AddRange(data);
this.IsReadOnly = true;
this.RaiseListChangedEvents = true;
}
}
Мой веб-приложение, когда он вызывает этот метод, всегда свисает, если я не комментирую выведите следующую строку:
query = query.Where(row => row.InvoiceId == Guid.Empty
Любая идея, почему это происходит?
Спасибо! Я попробую! – mattruma 2008-12-11 03:29:18
По-прежнему висит ... действительно странно. Я могу запустить тот же запрос в LinqPad, и он работает отлично. – mattruma 2008-12-11 03:29:51
Хм, подумал, что это стоит того. Я больше ничего не получил .. извините! – BFree 2008-12-11 03:37:22