[C#]检查在 linq 中是否存在列

标签: Linq SQLServer C#
发布时间: 2017/2/27 6:37:32
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我有我想要连接和操作通过 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 () 它给出 0 计数。

我确信此列在数据库中存在该 datacontext 相连。

你有什么建议吗?

解决方法 1:

只是删除报价参数 ( {0} )。

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

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

赞助商