0

I am trying to show data from Mysql database base on value of textbox entered by user as in example shown below

what I need now since I am begginer in asp.net what is the fastest aproche to use to display that data ?

which is betteer using div or table tags for the layout ?

is their any bettwer code ? like using label to display output is it good idea? or their is something better ?

Image

code markup

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="AccountInquiry.aspx.cs" Inherits="BankingDemo.AccountInquiry" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Banking Site (Demo)</title>
</head>
<body>
    <form ID="from" runat="server">
        <div>
            <asp:Label ID="lbl_ID" runat="server">Enter ID</asp:Label>
        </div>

        <asp:TextBox ID="ID" runat="server"></asp:TextBox>
        <asp:Button ID="QurAcc" runat="server" Text="Query" OnClick="QurAcc_Click" />
        <asp:Label ID="lbl_CityName" runat="server"></asp:Label>
    </form>
</body>
</html>

c# code

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Configuration;
using MySql;
using MySql.Data;
using MySql.Data.Types;
using MySql.Data.MySqlClient;

namespace BankingDemo
{
    public partial class AccountInquiry : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        public void get_info()
        {
            string connstr = ConfigurationManager.ConnectionStrings["ConnConfig"].ToString();
            string cmdtxt = @"select Name,CountryCode,District,Population from world.city where id = @ID_param";
            string temp = null;

            try
            {
                using (MySqlConnection conn = new MySqlConnection(connstr))
                using (MySqlCommand cmd = new MySqlCommand(cmdtxt))
                {
                    cmd.CommandType = CommandType.Text;
                    cmd.Parameters.AddWithValue("@ID_param", ID.Text);
                    cmd.Connection = conn;
                    conn.Open();

                    MySqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        temp += "<br />";
                        temp += reader["Name"].ToString();
                        temp += reader["CountryCode"].ToString();
                        temp += reader["District"].ToString();
                        temp += reader["Population"].ToString();
                        temp += "<br />";
                    }
                    conn.Close();
                }

                lbl_CityName.Text = temp;
            }
            catch (Exception ex)
            {
                //ex.Message;
            }
        }

        protected void QurAcc_Click(object sender, EventArgs e)
        {
            get_info();
        }
    }
}
1
  • Divs are preferred over table tags because they generate less dom overhead and less ripple effects when changed. You can actually create a div table using css as shown here divtable.com/generator (change the drop down to div table and see the code it generates Commented May 13, 2017 at 16:44

1 Answer 1

1

The correct way to do that is to create four labels, like that:

<br/>
<asp:Label ID="lblCityName" runat="server"></asp:Label>
<br/>
<asp:Label ID="lblCountry" runat="server"></asp:Label>
<br/>
<asp:Label ID="lblDistrict" runat="server"></asp:Label>
<br/>
<asp:Label ID="lblPopulation" runat="server"></asp:Label>

C#:

while (reader.Read())
{
    lblCityName.Text = "Name: " + reader["Name"].ToString();
    lblCountry.Text = "Country Code: " + reader["CountryCode"].ToString();
    lblDistrict.Text = "District " + reader["District"].ToString();
    lblPopulation.Text = "Population: " + reader["Population"].ToString();
}
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.