C# 如何替换表名
我需要创建一个带有参数的“公共”网格。 问题是,在Delete操作中,我不能将表作为变量引用 我使用edmx模型C# 如何替换表名,c#,asp.net,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 4,我需要创建一个带有参数的“公共”网格。 问题是,在Delete操作中,我不能将表作为变量引用 我使用edmx模型 public ActionResult PartialView_GridCommonDelete(System.Int64 data_autoinc) { var table = ViewBag.CurrentTable; var key= ViewBag.Key; if (data_autoinc != null) { try
public ActionResult PartialView_GridCommonDelete(System.Int64 data_autoinc)
{
var table = ViewBag.CurrentTable;
var key= ViewBag.Key;
if (data_autoinc != null)
{
try
{
//ERROR HERE
var item = **ent.table**.FirstOrDefault(it => it.product_autoinc == data_autoinc);
if (item != null)
ent.tabla.Remove(item);
ent.SaveChanges();
}
catch (Exception e)
{
ViewData["EditError"] = e.Message;
}
}
return PartialView("PartialView_GridCommon", ViewBag.CurrentSql);
}
如何动态地替换表名,以便在许多表中使用它
谢谢ORM无法实现您的目标,即在运行时定义表 您可以尝试的是:
context.Database.ExecuteSqlCommand("TRUNCATE TABLE [TableName]");
您可以显式地传递表名并启动sql查询
试试看
谢谢
Nipun可以对这个问题做出一般性的评论,如果您的表类继承自基类,您可以使用该基类来代替表名或接口。谢谢您的回答。你能给我举个简单的例子吗?我是c#的初学者。你在
ViewBag.CurrentTable
中得到了什么?您可以尝试ViewBag.CurrentTable.FirstOrDefault(it=>it.product\u autoinc==data\u autoinc)代码>