C# 如何在实体框架中使用下面的代码

C# 如何在实体框架中使用下面的代码,c#,asp.net,C#,Asp.net,其中: asp\u testtable是表名 userid是类型为varchar SL是类型为bigint userAmount是类型为decimal 这是我遵循的三个步骤,但没有一个是有效的 步骤1: delete asp_testtable where userid='XYZ' and SL=12 and userAmount=13 步骤2: asp_testtable map = DBContext.asp_testtable.RemoveRange(DBContex

其中:

  • asp\u testtable
    是表名
  • userid
    是类型为
    varchar
  • SL
    是类型为
    bigint
  • userAmount
    是类型为
    decimal
这是我遵循的三个步骤,但没有一个是有效的

步骤1:

delete asp_testtable
where  userid='XYZ' 
and    SL=12
and    userAmount=13
步骤2:

asp_testtable map = DBContext.asp_testtable.RemoveRange(DBContext.asp_testtable.Where(c => c.userid == tbuserid.Text.Trim() && c.SlNo == Convert.ToInt64(lbSlNo.Text.ToString()) && c.userAmount == Convert.ToInt16(ddluserAmount.SelectedValue.ToString()))).SingleOrDefault();

DBContext.asp_testtable.Remove(map);
步骤3:

var y = (from x in asp_testtable where x.userid == tbuserid.Text.Trim() && x.SlNo == Convert.ToInt64(lbSlNo.Text) && x.userAmount == Convert.ToInt16(ddluserAmount.SelectedValue) select x.FeeMappingSlNo).First();

DBContext.asp_testtable.RemoveRange(y);
试试这个:

feedetail = new asp_testtable()
{
    userid = tbuserid.Text.Trim(),
    SlNo = Convert.ToInt64(lbSlNo.Text),
    userAmount = Convert.ToInt16(ddluserAmount.SelectedValue)
};

DBContext.asp_testtable.Remove(feedetail);

找到相关项目并使用
DeleteObject

删除它们。请发布一些代码-例如,您尝试了什么?什么有效,什么无效?这是我试过的方法,它是DBContext.asp_testtable.removange(DBContext.asp_testtable.Where(c=>c.userid==tbuserid.Text.Trim()&&c.SlNo==Convert.ToInt64(lbSlNo.Text.ToString())和&c.userAmount==Convert.ToInt16(ddluserAmount.SelectedValue.ToString()).SingleOrDefault();
DBContext.asp_testtable.Remove(映射)这确实需要扩展,我知道您正在尝试将一些SQL转换为用于实体框架;但问题表明缺乏EF和stackoverflow要求的思想和知识请参见:为了熟悉社区希望看到的问题所遵循的标准。展示模型。我建议在我的项目中不支持将删除对象添加到questionDeleteObject中使用
RemoveRange
,然后在问题中指定
EF
。亲爱的Ofiris,我已经显示了我使用的所有步骤
string DeleteStatement = "DELETE FROM asp_testtable " + 
    "WHERE userid = 'XYZ' AND SL=12 AND userAmount=13 ";

yourcontext.Database.SqlQuery(DeleteStatement);
context.asp_testtable.Select(item => item.userid == "XYZ" && item.SL = 12 && 
item.userAmount == 13).ToList().ForEach(context.asp_testtable.DeleteObject);
context.SaveChanges();