如何在linq中动态地将表名传递给sql

时间:2014-12-08 12:21:44

标签: linq linq-to-sql

我需要你的帮助来解决这个问题。

如何在linq中动态地将表名传递给C#.net?

中的sql
public IntPol(DataClasses1DataContext DC, decimal value,string tableName)
{
}

tableName会动态变化。

2 个答案:

答案 0 :(得分:0)

我不相信这是可能的。至少不使用传统的Ling-To-SQL。您可以使用L2S Connection对象,硬编码T-SQL语句,并将其传递给SQL Server。但是,在这种情况下,你不再使用L2S了。

答案 1 :(得分:0)

如果我正确理解了这个问题,那么你可以做一些像

这样的事情
public IntPol(DataClasses1DataContext DC, decimal value,string tableName)
{
  DC = new DataClasses1DataContext("yourConnString");
  var result = DC.Mapping.GetTables().SingleOrDefault(t => t.TableName.ToString() == tableName);
}

或者您也可以执行tableObject.GetType().Name但如果类型是动态的,则可能需要单独发送Type tableType