C# 如何使用dapper从数据库返回字符串
我试过了,但它给出了这个错误 必须声明标量变量“@imageid” 控制器C# 如何使用dapper从数据库返回字符串,c#,dapper,C#,Dapper,我试过了,但它给出了这个错误 必须声明标量变量“@imageid” 控制器 [HttpGet] [Route("download/{id:int}")] public String Getfiles(int imageid) { return _ShopDataProvider.DownloadImage(imageid); } C类 public String DownloadImage(int imageid) {
[HttpGet]
[Route("download/{id:int}")]
public String Getfiles(int imageid)
{
return _ShopDataProvider.DownloadImage(imageid);
}
C类
public String DownloadImage(int imageid)
{
using(IDbConnection dbConnection = Connection)
{
string sQuery0 = "SELECT path FROM Shop WHERE ShopId = @imageid";
dbConnection.Open();
String Path = dbConnection.QueryFirstOrDefault<String>(sQuery0, new { ShopId = imageid });
return Path;
}
}
公共字符串下载图像(int-imageid)
{
使用(IDbConnection dbConnection=Connection)
{
string sQuery0=“选择ShopId=@imageid所在店铺的路径”;
dbConnection.Open();
String Path=dbConnection.QueryFirstOrDefault(sQuery0,new{ShopId=imageid});
返回路径;
}
}
您在SQL查询中声明了一个名为@imageid
的参数,但没有为其提供值。您正在为参数@ShopID
(new{ShopID=imageid}
)提供一个值,您的SQL查询不使用该值
将new{ShopId=imageid}
更改为new{imageid=imageid}
请参阅。您在SQL查询中声明了一个名为
@imageid
的参数,但没有为其提供值。您正在为参数@ShopID
(new{ShopID=imageid}
)提供一个值,您的SQL查询不使用该值
将new{ShopId=imageid}
更改为new{imageid=imageid}
请参阅。我的数据库中有值。错误已修复,但当我将ShopId=@imageid所在的商店的选择路径更改为SELECT ShopName..etc
string path=dbConnection.QueryFirstOrDefault(sQuery0,new{imageid=1})时,返回字符串为null代码>它返回一个值,但字符串路径=dbConnection.QueryFirstOrDefault(sQuery0,new{imageid=imageid})代码>它不会返回value@DulangaHeshan使用调试器。查看imageid
的值。它有你期望的值吗?是的,我修复了错误是[Route(“download/{id:int}”)]
这里非常感谢兄弟们。我的数据库中有一些值错误是修复的,但当我从ShopId=@imageid的商店更改选择路径以选择ShopName..etcstring path=dbConnection.QueryFirstOrDefault时返回字符串为空(sQuery0,new{imageid=1});
它返回一个值,但字符串路径=dbConnection.QueryFirstOrDefault(sQuery0,new{imageid=imageid});
它不返回value@DulangaHeshan使用调试器。查看imageid
的值。它是否具有您期望的值?是,我修复了错误为[Route](“下载/{id:int}”)]
这里非常感谢兄弟