我的目标是创建一个删除函数,该函数使用 LINQ 通过查找与记录的主键匹配的用户输入的 id 从数据库表中删除记录。
MyDBEntitiesClass是函数需要传递的参数,它告诉它要搜索的 DataTable。
IDontKnowWhatType是我在确定时寻求帮助的类型。
MyPrimaryKey需要替换为引用 MyDBEntitiesClass 的主键的内容。
TestDatabaseEntities是通过从我现有的 SQL 服务器数据库生成实体模型而创建的连接字符串的名称。
public static void DeleteFrom(IDontKnowWhatType MyDBEntitiesClass)
{
var dbEntities = new TestDatabaseEntities();
//Prompt the user for an ID
Console.WriteLine("Select ID for deletion.");
// save the ID to IDtoMark
int IDtoMark = int.Parse(Console.ReadLine());
try
{
// return a single record that matches IDtoMark
MyDbEntitiesClass x = dbEntities.MyDbEntitiesClass.Single(x => x.myPrimaryKey == IDtoMark);
//Remove the marked record, and save changes
dbEntities.MyDbEntitiesClass.Remove(x);
dbEntities.SaveChanges();
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
}