使用 LINQ to SQL 搜索 SQL 数据库

Search SQL db using LINQ to SQL

我正在尝试使用 LINQ to SQL 搜索数据库并显示它。我尝试了下面的代码,但它没有显示与控制台条件匹配的记录。

这里详情是table姓名

Detail detail = new Detail();

    Console.Write("\nEnter ID to Search Record :");
     int id = Convert.ToInt32(Console.ReadLine());
     var searchbyId = from search in db.Details
                         where search.Id == id
                         select search;
     db.SubmitChanges();
     Console.WriteLine("\n Search Results \n");
     Console.WriteLine(String.Format("Id \t | Name \t | Last Name \n"));

     Console.WriteLine(String.Format("{0} \t | {1} \t | {2} ",
                               detail.Id,detail.Name, detail.LastName));

尝试学习 LINQ 的新手

我会尝试这样的事情:

Console.Write("\nEnter First Name :");
string id = Convert.ToInt32(Console.ReadLine());
var searchbyId = from search in db.Details
                 where search.Id == id
                 select search;
Console.WriteLine("\n Search Results \n");
Console.WriteLine(String.Format("Id \t | Name \t | Last Name \n"));

foreach(var item in searchbyId )
Console.WriteLine(String.Format("{0} \t | {1} \t | {2} ",
                       searchbyId.Id,detail.Name, searchbyId.LastName));

可能有多个结果具有相同的 ID,因此请使用 foreach

Console.Write("\nEnter ID to Search Record :");
 int id = Convert.ToInt32(Console.ReadLine());
 var searchbyId = from search in db.Details
                     where search.Id == id
                     select search;

 Console.WriteLine("\n Search Results \n");
 Console.WriteLine(String.Format("Id \t | Name \t | Last Name \n"));

 foreach(var item in searchbyId )
 Console.WriteLine(String.Format("{0} \t | {1} \t | {2} ",
                           item.Id,detail.Name, item.LastName));

101 LINQ Samples