1) First
(linq)은 단일 레코드를 반환합니다. 목록을 반환하려면 Where
을 사용하는 것이 좋습니다.
2) Where
(linq)은 IEnumerable<T>
유형의 컬렉션을 반환합니다. 나중에 .ToList()
으로 전화하거나 var
을 입력해야합니다.
3) 원래 테이블을 쿼리 할 수있는 형식으로 가지고있는 한이를 실행하기 위해 새 데이터 컨텍스트를 만들지 않아도됩니다.
private void button3_Click(object sender, EventArgs e)
{
var myLambda = MyDataTable.AsEnumerable().Where(lambda => lambda.Field<string>("First_Name").StartsWith(TxtFirstName.Text));
//var should be of the type IEnumerable<DataRow>
//from here, we can use this var as the DataSource for another display
resultsBox.DataSource = myLambda;
//assuming resultsBox can interpret a datarow correctly.
//You may need to select First_Name only, or some other data, out of the returned values.
}
또는 예에 의한
최종 코드,
private void button3_Click(object sender, EventArgs e)
{
MyLinqDataContext MyData = new MyLinqDataContext();
var myLambda = MyData.MyLists.Where(lambda => lambda.First_Name.StartsWith(TxtFirstName.Text));
resultsBox.DataSource = myLambda;
}
그럼 어떻게 작동하지 않는 데이터 컨텍스트를 사용하고 계십니까? – Arran