我需要执行以下命令并将结果传递给标签.我不知道如何使用Reader.有人能帮我一下吗?

String sql = "SELECT * FROM learer WHERE learer.id = " + index;
SqlCommand cmd = new SqlCommand(sql,conn);
learerLabel.Text = (String) cmd.ExecuteReader();

如您所见,我创建了SQL语句并执行它,但它不起作用.为什么?

控制台显示:

不能将SqlDataReader隐式为 弦...

如何才能以字符串形式获得所需结果,以便标签可以正确显示它.

推荐答案

不建议使用DataReaderCommand.ExecuteReader从数据库中仅获取one个值.相反,您应该使用Command.ExecuteScalar,如下所示:

String sql = "SELECT ColumnNumber FROM learer WHERE learer.id = " + index;
SqlCommand cmd = new SqlCommand(sql,conn);
learerLabel.Text = (String) cmd.ExecuteScalar();

Here是有关连接到数据库和管理数据的详细信息.

Asp.net相关问答推荐

ASP.NET控制器上的默认接受媒体类型

Reaction-Native SignalR连接在调试模式下工作,在释放模式下失败

页面刷新后如何存储JS Select 数据

将 ASP.NET 成员资格表添加到我自己的现有数据库中,还是应该配置一个单独的 ASP.NET 成员资格数据库?

静态字段与会话变量

登录成功后 User.Identity.IsAuthenticated 为 false

在程序集中找不到上下文类型

ASP.NET MVC4 jquery/javascript 包的使用

用于链接字符串中的 url 的 C# 代码

我应该使用用户名还是用户 ID 来引用 ASP.NET 中经过身份验证的用户

如何在不使用 Session 的情况下在 ASP.net 中的页面之间传递值

Devexpress 或 Telerik Controls 比较

带有 ASP.NET MVC 6 锚标记助手的 QueryString

如何在asp.net mvc的html.actionlink中调用javascript函数?

如何在 ASP.NET MVC3 中配置区域

确定哪个 w3wp.exe 进程属于 Windows 7 / IIS7.5 中的哪个 App Pool?

将通用列表绑定到转发器 - ASP.NET

LINQ:使用 Lambda 表达式获取 CheckBoxList 的所有选定值

C# 7 本地函数未按预期工作且未显示错误

盒式磁带包与 MVC4 包