エラーを理解できません
方法:
public List<Task> GetAllTasks()
{
var AllTasks = from t in tasks
where t.Status.ToString() == "Completed" || t.Status.ToString() == "Pending"
select t;
return (List<Task>)AllTasks;
}
分離コード:
protected void Page_Load(object sender, EventArgs e)
{
TaskList tdl = (TaskList)Session["TodoList"];
List<Task> AllTasks = tdl.GetAllTasks();
string str = "";
foreach (Task t in AllTasks)
{
str += t.ToString() + "<br />";
}
LblTasks.Text = str;
}
タスク(AddTask.aspx)を追加した後、別のページにリダイレクトしてそれらを表示すると、ランタイムエラーが発生します。
タイプ「WhereListIterator1[Task]' to type 'System.Collections.Generic.List
1 [Task]」のオブジェクトをキャストできません。
LINQに問題がありますか?私は昨日heheを学びました。
ありがとう。
.ToList()
が必要なのは、クエリで直接、またはクエリを返すときだけです。のように
var AllTasks = (from t in tasks
where t.Status.ToString() == "Completed" || t.Status.ToString() == "Pending"
select t).ToList();
または
return AllTasks.ToList();