C# 我的MySql“SELECT”命令有问题

C# 我的MySql“SELECT”命令有问题,c#,winforms,datatables,mdf,C#,Winforms,Datatables,Mdf,我想从表中获取第一个id,并将其写入label16.text,以便为我的程序创建一个页面。为什么下面的代码返回system.threading.tasks.Unwromise'1[system.object] await sqlConnection.OpenAsync(); SqlCommand command = new SqlCommand("SELECT Id from Recipes order by id asc limit 1", sqlConnecti

我想从表中获取第一个id,并将其写入label16.text,以便为我的程序创建一个页面。为什么下面的代码返回system.threading.tasks.Unwromise'1[system.object]

await sqlConnection.OpenAsync();               
SqlCommand command = new SqlCommand("SELECT Id from Recipes order by id asc limit 1", sqlConnection);
label16.Text = command.ExecuteScalarAsync().Result.ToString();
你应该改变

label16.Text=command.ExecuteScalarAsync.Result.ToString; 到

var t=await command.ExecuteScalarAsync; label16.Text=t.Unwrap.ToString; 为了填写完整的答案,我也会从评论中粘贴这个

您必须做的另一件事是修复SQL查询,它应该是

按Id asc从配方订单中选择TOP1 Id 第三项质询

我会这样做的

尝试 { var id=int.Parselabel16.Text; sqlDataAdapter=newSqlDataAdapter$SELECT*FROM Recipes,其中Id={Id},sqlConnection; }捕获{//错误处理}
有必要打开包装吗?原因:System.Data.SqlClient.SqlException:靠近“limit”的语法不正确。因此,如果我得到的是MSSQL,您应该按照Id ascwait从Recipes order中选择TOP1 Id,如果您仍然在这里,如何获取label.text的值并使Id成为该值?我试过了,效果不错,但我需要把8改成label16.text。sqlDataAdapter=new sqlDataAdapter从配方中选择*,其中Id=8,sqlConnection;我已经编辑了答案,所以这里也有答案