我需要删除表中的记录
对于一个CategoryId,我将有几个serviceTypes ..
Ex:CategoryId = 123与此相关的服务类型是1 2 3 4 5
我需要一个查询来删除servicetype 3到CategoryId 123 ..
我的方法将会传递
Deleterecord(CategoryId,ServiceTypeId);
答案 0 :(得分:3)
如果你正在使用LINQ to SQL:
var service = Services
.Include("Category")
.First(s => s.ServiceId == 3 && s.Category.CategoryId == 123);
context.Services.DeleteOnSubmit(service);
context.SubmitChanges();
如果您正在使用实体框架:
var service = Services
.Include("Category")
.First(s => s.ServiceId == 3 && s.Category.CategoryId == 123);
context.Services.DeleteObject(service);
context.SaveChanges();
答案 1 :(得分:0)
lambda表达式是一个匿名函数,它主要用于在LINQ中创建委托。简单地说,它是一个没有声明的方法,即访问修饰符,返回值声明和名称。
在方法仅使用一次且方法定义很短的地方特别有用。它可以节省您向包含类声明和编写单独方法的工作。
优点: 减少打字。无需指定函数的名称,返回类型及其访问修饰符。 在阅读代码时,您无需在其他地方查找方法的定义。
Lambda表达式应该简短。复杂的定义使得调用代码难以阅读。
例如
List<int> numbers = new List<int>{11,37,52};
List<int> oddNumbers = numbers.where(n => n % 2 == 1).ToList();