通常、LINQ to SQL を使用する場合、Count() を使用して返されるレコード数を取得できます。ただし、この場合、オブジェクトに対して定義されていないかのように、Count() メソッドは使用できません。なぜこれが起こっているのかわかりません。コードは次のとおりです。
IQueryable departments;
if (role == "ADMIN")
{
departments =
db.Departments.Select(d => new {d.DepartmentID, FullName = d.Division.DivisionName + ": " + d.DepartmentName})
.OrderBy(d => d.FullName);
}
else
{
departments =
db.J_DeptAdmins.Where(jda => jda.AdminUserID == userID)
.Select(d => new {d.DepartmentID, FullName = d.Department.Division.DivisionName + ": " + d.Department.DepartmentName})
.OrderBy(d => d.FullName);
if (departments.Count() > 0) //Error is here
{
drpDepartment.Style.Add("display", "none");
lblDisplayDepartment.Style.Add("display", "none");
}
}