Линк и лямбда, оба игнорируют личность, когда я выполняю основные операции - как этого избежать? - PullRequest
1 голос
/ 28 сентября 2011

У меня есть DataTable, скажем:

OrdersDataTable dtResults = Datalayer.Orders.GetOrdersByCustomer(1)

, а затем я пытаюсь выбрать часть этого для привязки к повторителю данных, например,

var CustomerOrdersByProduct = dtResults.Where(r => r.ProductId == ProductId);
               // OR
var CustomerOrdersByProduct = from r in dtResults
                              where r.ProductId == ProductId
                              select r

rpOrders.DataSource = CustomerOrdersByProduct;
rpOrders.DataBind();

и сохраненныйпроцедура возвращает таблицу следующим образом:

OrderId    ProductId    CustomerId .....(etc)

Но я получаю ошибку, когда пытаюсь получить доступ к OrderId (который является первичным ключом) в моем var CustomerOrdersByProduct, даже при отладке или простоintellisense .. Что я пропускаю, пожалуйста?

спасибо.

1 Ответ

2 голосов
/ 28 сентября 2011

Похоже, тип строки вашего OrdersDataTable не имеет свойства OrderId, даже если хранимая процедура возвращает его.

Посмотрите на проект для OrdersDataTable, который япредположим, это сгенерированный строго типизированный тип данных.Возможно, вы сопоставили его со свойством Id вместо OrderId или чем-то в этом роде?В любом случае, я очень сомневаюсь, что это как-то связано с LINQ напрямую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...