linq to sql 的删除一张表中的多条记录

在student表中一次删除3条记录如图我用的方法是:StudentManageDataContextumdb=newStudentManageDataContext()... 在student表中一次删除3条记录如图
我用的方法是:

StudentManageDataContext umdb = new StudentManageDataContext();

public void DeleteStudent(string studentIdStr)
{
string[] array=studentIdStr.Split(',').ToArray();
var student;
foreach (var item in array)
{
student = from s in umdb.Student
where s.S_ID == item
select s;
umdb.Student.DeleteOnSubmit(student);
umdb.SubmitChanges();
}
}

这太差了要是一次删除100条那还得了。但我改写成访sql形式的报错:

var studentList = from s in umdb.Student

where s in s.S_ID
select s;

请问下linq to sql 中用in 查询数据怎么个写法
展开
 我来答
FantasyChump
2010-05-11 · TA获得超过3288个赞
知道大有可为答主
回答量:2127
采纳率:0%
帮助的人:2255万
展开全部
Linq2Sql本身没有这样的方法,但是网上有人扩展出了这样的方法.
不过这样的语句,本身可以通过Linq2Sql直接执行SQL或存储过程来解决,更加灵活.
百度网友9fac9f8a0
2010-05-11 · 超过23用户采纳过TA的回答
知道答主
回答量:214
采纳率:0%
帮助的人:64.1万
展开全部
直接用delete不行吗!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
甲高无梦桐
2019-12-17 · TA获得超过3800个赞
知道大有可为答主
回答量:3100
采纳率:26%
帮助的人:213万
展开全部
public
void
DeleteStudent(string
studentIdStr)
{

string[]
array=studentIdStr.Split(',').ToArray();

using(StudentManageDataContext
db
=
new
StudentManageDataContext
())

{

var
students
=
db.Student.where(stus=>array.Contains(stus.S_ID));

db.Student.DeleteAllOnSubmit(students);

db.SubmitChanges();

}

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式