AsEnumerable возвращает значение, но без него не возвращает значение.
Кажется, у меня проблема с извлечением определенного значения из моего odataQueryservice.
ODataQueryService ax = new ODataQueryService(new Uri(Link));
double test = double.NaN;
try
{
test = ax.InventTable.Where(X => X.InventTable_ItemId == "030001").Select(x => x.InventTable_Width).FirstOrDefault();
}
catch (Exception e)
{
Console.WriteLine(e);
}
Возвращает ошибку:
System.Data.Services.Client.DataServiceQueryException: An error occurred while processing this request. ---> System.Data.Services.Client.DataServiceClientException: <?xml version = "1.0" encoding = "utf-8" standalone = "yes"?>
<error xmlns = "http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
<code></code>
<message xml:lang = "da-DK">An error occurred while processing this request.</message>
</error>
at System.Data.Services.Client.QueryResult.ExecuteQuery()
at System.Data.Services.Client.DataServiceRequest.Execute[TElement](DataServiceContext context, QueryComponents queryComponents)
--- End of inner exception stack trace ---
at System.Data.Services.Client.DataServiceRequest.Execute[TElement](DataServiceContext context, QueryComponents queryComponents)
at System.Data.Services.Client.DataServiceQuery`1.Execute()
at System.Data.Services.Client.DataServiceQuery`1.GetEnumerator()
at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source)
at System.Data.Services.Client.DataServiceQueryProvider.ReturnSingleton[TElement](Expression expression)
at System.Data.Services.Client.DataServiceQueryProvider.Execute[TResult](Expression expression)
at System.Linq.Queryable.FirstOrDefault[TSource](IQueryable`1 source)
но это
ODataQueryService ax = new ODataQueryService(new Uri(Link));
double test = double.NaN;
try
{
test = ax.InventTable.AsEnumerable.Where(X => X.InventTable_ItemId == "030001").Select(x => x.InventTable_Width).FirstOrDefault();
}
catch (Exception e)
{
Console.WriteLine(e);
}
возвращает фактическое значение, но загружает всю таблицу ... Как-то избежать этого, или почему я вообще получаю первую ошибку?
идентификатор двойной, а второй такой же, как вы предлагаете @juharr
Если он двойной, то почему вы его сравниваете с string?
@juharr iventItemID - это строка ... Другое значение - двойное. Извините
AsEnumerable должен быть помещен первым ... размещение в середине тоже не работает





У второго должна быть ошибка компиляции, так как это должен быть
AsEnumerable(). Также какой типInventTable_ItemId?