我有以下C#代码从链接服务器上的表中选择列:
var query2 = $@"select [FileName] from [AMS_H2H].[H2H].[dbo].[FileReconciliation] where ProductCode = @productCode";
LayZConnection(); //make the db connection
var candidates = _dbConnection.Query<int>(query2, new { productCode = "ACHDH" });在运行它时,我会得到以下错误:
"Input string was not in a correct format."如果我的查询是以下所示,在其中选择所有列,它就会工作:
var query2 = $@"select * from [AMS_H2H].[H2H].[dbo].[FileReconciliation]选择FileName的正确格式是什么?顺便说一句,第一个查询在MSSMS中运行得很好。
发布于 2020-01-12 09:47:58
您在Query<int>中指定了一种Query<int>类型,这将导致Dapper尝试将查询结果映射到一个整数,但是您的查询是在select [FileName]中返回一个文件名,这意味着它是一个字符串。
更改Query<string>类型应该可以解决这个问题。
有关Dapper查询方法的更多信息可在Dapper的文档中获得
https://stackoverflow.com/questions/59684379
复制相似问题