C# 检查linq中是否存在列
我有一个外部程序的数据库,我想通过LINQ连接到SQL并对其进行操作。我的问题是,我想支持更广泛的数据库版本,所以我必须检查列是否存在 我试过这样的方法:C# 检查linq中是否存在列,c#,sql-server,linq,C#,Sql Server,Linq,我有一个外部程序的数据库,我想通过LINQ连接到SQL并对其进行操作。我的问题是,我想支持更广泛的数据库版本,所以我必须检查列是否存在 我试过这样的方法: IEnumerable<string> k = db.ExecuteQuery<string>("select column_name from INFORMATION_SCHEMA.COLUMNS where COLUMN_NAME='{0}' and TABLE_NAME='POSIEDZENIA'",
IEnumerable<string> k = db.ExecuteQuery<string>("select column_name from INFORMATION_SCHEMA.COLUMNS where COLUMN_NAME='{0}' and TABLE_NAME='POSIEDZENIA'", column);
IEnumerable k=db.ExecuteQuery(“从信息_SCHEMA.COLUMNS中选择列_name,其中列_name='{0}'和表_name='POSIEDZENIA',column”);
它什么也没给我。k、 Count()给出错误:
查询结果不能枚举多次
当我通过ToList()将其强制转换为List时,它给出了0计数
我确信datacontext所连接的数据库中存在此列
你有什么建议吗 只需删除参数(
{0}
)周围的引号即可
IEnumerable k=db.ExecuteQuery(“从
信息_SCHEMA.COLUMNS,其中列_NAME={0}和表_NAME='POSIEDZENIA',COLUMN);
有关更多信息,请访问。是否检查列名或列值>?我想检查列是否“存在”。实际值无关紧要。它给出了预期结果:/check out:@OzgurBar链接中没有枚举。您是最好的。谢谢;)
IEnumerable<string> k = db.ExecuteQuery<string>("select column_name from
INFORMATION_SCHEMA.COLUMNS where COLUMN_NAME={0} and TABLE_NAME='POSIEDZENIA'", column);