繁体   English   中英

检查linq中是否存在列

[英]Check if column exists in linq

我有要连接的外部程序数据库,并希望通过LINQ to SQL进行操作。 我的问题是,我想支持更大范围的数据库版本,因此我必须检查列是否存在。

我尝试过这样的事情:

      IEnumerable<string> k = db.ExecuteQuery<string>("select column_name from INFORMATION_SCHEMA.COLUMNS where COLUMN_NAME='{0}' and TABLE_NAME='POSIEDZENIA'", column);

它什么也没有给我。 k.Count()给出错误:

查询结果不能被多次枚举

当我通过ToList()将其转换为List时,它的计数为0。

我确定该列存在于datacontext连接到的数据库中。

有什么建议吗?

只需删除参数( {0} )周围的引号即可。

IEnumerable<string> k = db.ExecuteQuery<string>("select column_name from 
INFORMATION_SCHEMA.COLUMNS where COLUMN_NAME={0} and TABLE_NAME='POSIEDZENIA'", column);

有关更多信息,请访问此msdn文章

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM