Parent_ObjectiveID
và identity
là int?
kiểu dữ liệu. Trong chương trình của tôi nên trả về một đối tượng, nhưng nó đưa ra một lỗi: Sequence contains no elements
.Các vấn đề với các loại có thể vô hiệu hóa trong một Hàm LINQ
int? identity = null;
Objective currentObjective = (from p in cd.Objective
where p.Parent_ObjectiveID == identity
select p).Single();
Mặc dù, nếu tôi thay thế biến số nhận dạng thành rỗng. Nó hoạt động, nhưng tôi không hiểu.
currentObjective = (from p in cd.Objective
where p.Parent_ObjectiveID == null
select p).Single();
Điều gì đang xảy ra?
UPDATE 1:
Tôi đã làm điều này:
if (identity == null)
{
currentObjective = (from p in cd.Objective
where p.Parent_ObjectiveID == null
select p).Single();
}
else
{
currentObjective = (from p in cd.Objective
where p.Parent_ObjectiveID == identity
select p).Single();
}
Nhưng tôi không thực sự thích nó.
Bạn đang nói về Linq-To-Sql hoặc LINQ-To-Objects? Tôi chỉ thử nghiệm này với LINQ-To-Objects, và nó làm việc cho tôi. (.NET 4.0) – magnattic
@atticae LINQ to SQL –
Tại sao bạn gắn thẻ nó với 'linq-to-objects'? ;) – magnattic