繁体   English   中英

如何使用 c# asp.net 将数据库中的数据插入表中?

[英]How to insert data from database into a table using c# asp.net?

我对 asp.net 和 c# 相当陌生,我已连接到 SQL 数据库,现在我想将我拥有的数据显示到一个表中。

这是我的后端:

public string getWhileLoopData()
{
    string htmlStr = "";
    SqlConnection conn = new SqlConnection("Data Source = secret;Initial Catalog = GTI;Persist Security Info = True;Integrated Security = true;User ID = user;Password = pass;");
    conn.Open();
    SqlCommand cmd = new SqlCommand("SELECT * FROM [CORE_SYS_STATUS]", conn);
    SqlDataReader reader = cmd.ExecuteReader();

    while (reader.Read())
    {
        int ID = reader.GetInt32(0);
        int SYSTEM_NAME = reader.GetInt32(0);
        int SYSTEM_STATUS = reader.GetInt32(0);
        int SYSTEM_SHORTMSG = reader.GetInt32(0);

        htmlStr += "<tr><td>" + ID + "<tr><td>" + SYSTEM_NAME + "<tr><td>" + SYSTEM_STATUS + "<tr><td>" + SYSTEM_SHORTMSG;
    }

    conn.Close();
    return htmlStr;
}

这是我的前端:

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="ContentPlaceHolder">

    <div class="bg-light text-center bg-light rounded border border-dark m-4">

        <div class="col-md-12">
            <h1 class="display-4 text-center p-4">Gestão de Alertas</h1>

            <table class="table table-bordered table-hover text-center p-4 border border-dark">
                <thead>
                    <tr class="table-success disabled">
                        <th style="width: 5%" scope="col">ID</th>
                        <th style="width: 20%" scope="col">Nome</th>
                        <th style="width: 15%" scope="col">Status</th>
                        <th style="width: 45%" scope="col">Mensagem</th>
                    </tr>
                </thead>
                <tbody>
                   <!-- I want to insert data here -->
                </tbody>
            </table>
        </div>
    </div>
</asp:Content>

这就是结果:结果

它可能看起来真的很傻很容易,但我对这个编程很陌生,如果有人能帮我弄清楚如何将我的数据插入表中,我会很高兴。 谢谢!

有很多方法可以实现这一目标。

我建议查看有关 DataBinding 的文档,例如:

在 aspnet 网络表单中检索数据

GridView DataBind (查看那里的示例)

此外,您应该查看有关 GetInt32 的文档: GetInt32 MSDN

该参数是 select 语句中列的索引,您始终传递 0,这肯定不是您想要的。 我还建议在 select 语句中明确命名您想要的列,而不是使用 select *。

对于快速解决方案,您可以将<%=getWhileLoopData()%>替换为<asp:Literal />控件; 在您的代码隐藏中,将其 Text 属性设置为 (getWhileLoopData)。

如果您是 ASP.NET 的新手,学习 WebForms 数据绑定将需要一段时间,因为它有一些您需要掌握的规则和特性。 老实说,除非你必须在 WebForms 中构建这个东西,否则你应该开始学习 ASP.NET MVC,WebForms 是一种死技术。

<% HtmlString str = new HtmlString(getWhileLoopData()); %>
<%= str %>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM