mysql - 指定要在 dv.Table.Rows(x)(VALUE).ToString() 中使用的行

标签 mysql asp.net vb.net datatable

我有一个运行查询的短页面,我需要根据其值/内容而不是行 ID 显示特定行(因为我不知道它们将以什么顺序返回)。

这是我的代码,目前工作正常,前提是我指定了行 id,在本例中为行 id 2(但同样,这将是一个未知值,因此我无法使用行 id):

Imports System.Data
Imports MySql.Data.MySqlClient

Partial Class test
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load

        Dim strSQL As String = ""
        strSQL &= "SELECT id, item_name, lang_en "
        strSQL &= "FROM language_file_v2 "
        strSQL &= "WHERE item_name = 'SiteLandingPageBodyLoggedIn' OR item_name = 'SiteHomePageMySpecificJobs' OR item_name = 'SiteLandingPageBodyLoggedOut'"

        Using conn As New MySqlConnection(ConfigurationManager.ConnectionStrings("customer_support_devConnectionString").ConnectionString)
            Using da As New MySqlDataAdapter(strSQL, conn)

                Dim dt As New DataTable()
                da.Fill(dt)

                Dim dv As DataView = dt.AsDataView()

                LitSiteLandingPageBody.Text = dv.Table.Rows(2)("lang_en").ToString()

            End Using
        End Using

    End Sub

End Class

这可行,但因为我不知道返回结果的顺序,所以我无法使用 Rows(2),因为它可能不是我需要的第 2 行。

因此,我需要一种方法来专门显示 SiteLandingPageBodyLoggedOut 中的值(和/或例如“SiteHomePageMySpecificJobs”中返回的值),而不是 dv.Table.Rows(2)("lang_en").ToString() 例如。

LitSiteLandingPageBody.Text = dv.Table.Rows("SiteLandingPageBodyLoggedOut")("lang_en").ToString()

或者例如。

LitSiteLandingPageBody.Text = dv.Table.Rows(WHERE("item_name")="SiteLandingPageBodyLoggedOut")("lang_en").ToString()

或类似!

随附的屏幕截图显示了数据在数据库中的外观。

enter image description here

最佳答案

您可以使用数据表上的 select 函数来使用以下代码过滤结果

Dim drs = dt.Select("item_name = 'SiteLandingPageBodyLoggedOut'")
If drs.Length > 0 Then
    LitSiteLandingPageBody.Text = drs.First()("lang_en").ToString()
End If

关于mysql - 指定要在 dv.Table.Rows(x)(VALUE).ToString() 中使用的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25748415/

相关文章:

mysql - 在博客文章中将 MySQL 表显示为 ASCII

mysql - 从云服务器改为专用服务器会提高MySQL性能吗?

c# - 为什么打开 .xls 文件时显示错误消息

vb.net - 如何检测特定 datagridview 列的单元格值更改? - VB.NET

vb.net - Microsoft.Office.Interop.Excel VB.NET 如何禁用工作表中的选择锁定值

xml - 使用 VB.net 或 C# 将具有不同 ElementName 的 xml 序列化为同一对象

mysql - 从mysql表中获取年、月、周、日、小时数据的最大值

javascript - TypeORM:使用自定义属性查询多对多

javascript - 是否可以使用前端 JavaScript 编写 JSON 文件?

c# - 在 asp.net (C#) 的 SQL 查询中使用变量