用linq删除数据的问题

linger_liang 2009-09-11 04:48:55
表结构是
tab1:
id useid aut1 aut2
1 1 有权 有权
2 1 有权 无权
3 1 无权 有权
4 2 有权 有权
5 2 无权 无权

我现在想把userid=1或=2,实际上就是一个变量,的数据给删除掉我要怎么写这个linq语句呢,
比如:
string getDelID = Request.Params["data"];
//这个就是我获得的userid的值。其实就是要完成delete from tab1 where userid=getDelID这样的一个sql操作,下面要怎么写呢?

???

...全文
227 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
luotitan 2009-09-23
  • 打赏
  • 举报
回复
js:
Ext.Ajax.request({
url: '../DelData',//cs里的删除方法的路径
method: 'POST',
params: {
data: getDelID
}
});

cs:
public void DelData()
{
try
{
string getDelID = Request.Params["data"];


db.ExecuteCommand("DELETE FROM table WHERE [ID]=" + getDelID);


db.SubmitChanges();
}
catch (Exception e)
{
throw new Exception("删除失败。错误:" + e.Message);

}
}
Adechen 2009-09-13
  • 打赏
  • 举报
回复
查出要删除的entity---》执行删除----》SubmitChanges
哥斯达黎家 2009-09-12
  • 打赏
  • 举报
回复
使用LINQ删除 比较麻烦,步骤是这样的:
1 查询出来 实例集或单个实例
2 删除
3 更新数据库(很重要,只有更新了数据库才能生效)

1) var delDate=from x in Datacontext.tb1
where x.userid==getDelID
select x;

2) Datacontext.tb1.DeleteAllOnSubmit(delDate);

3) Datacontext.SubmitChanges();
战斗生活 2009-09-11
  • 打赏
  • 举报
回复
我也是新手但很遗憾我不会写呢
jxj0926 2009-09-11
  • 打赏
  • 举报
回复
不太明白你问题的意思,
你现在string getDelID = Request.Params["data"];不是得到了一个参数吗?
无论使用表达式,还是lamlda都可以直接接受参数,然后调用一个removed方法,再提交不就行了·
User test = ctx.Customers.Single(c => c.ID== 参数);
from o in db.Orders where o. ID == 参数
wuyq11 2009-09-11
  • 打赏
  • 举报
回复
NorthwindDataContext c = new NorthwindDataContext();
User test = ctx.Customers.Single(c => c.ID== "1");
c.User.Remove(test);
c.SubmitChanges();

DataContext dbContext = new DataContext("");
Table<User> users = dbContext.GetTable<User>();
var result = from user in users
where user.ID== "1"
select user;
users.DeleteAllOnSubmit(result);
dbContext.SubmitChanges();

参考
chen_ya_ping 2009-09-11
  • 打赏
  • 举报
回复
给你一个删除的代码:

NorthwindDataContext northwind = new NorthwindDataContext();
Customers c = northwind.Customers.Single(q => q.CustomerID == "123");
northwind.Customers.DeleteOnSubmit(c);
northwind.SubmitChanges();
十八道胡同 2009-09-11
  • 打赏
  • 举报
回复
我也是初学,给个建议:
var order =
(from o in db.Orders
where o.CustomerID == "WARTH" && o.EmployeeID == 3
select o).First();
foreach (OrderDetail od in orderDetails)
{
db.OrderDetails.DeleteOnSubmit(od);
}
db.Orders.DeleteOnSubmit(order);
db.SubmitChanges();
这样不行吗?先linq然后foreach来删除,在submit
linger_liang 2009-09-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lcl_data 的回复:]
http://www.cnblogs.com/lyj/archive/2008/01/28/1056133.html
参考这个。。
[/Quote]

这个我看了,里面没有我要的,我是批量删除满足条件的语句
十八道胡同 2009-09-11
  • 打赏
  • 举报
回复
http://www.cnblogs.com/lyj/archive/2008/01/28/1056133.html
参考这个。。
linger_liang 2009-09-11
  • 打赏
  • 举报
回复
顶一下

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧