我目前正在尝试使用Visual Studio在c#中创建一个asp.net Web应用程序,并且可以使用一些帮助。
我的一个网页是注册页面,您选择一个单选按钮(父母或子女)并继续填写表格。我有它工作,以便根据您选择的单选按钮,信息存储在我的数据库中的父表或子表中。
我遇到的问题是下一步要求我显示孩子的详细信息(姓名,用户名和DOB)。我希望在表格中显示数据,但是我试图遵循的例子以及我自己尝试过的其他事情都没有运气。我的下一个想法是使用一个列表框,并使用我的代码中显示的注释掉的部分,我设法显示到表中的子项,但所有在一行。
由于我的代码现在显示,“ListBox1.Items.Add(读者......)中的'添加'下出现错误。它表示方法'添加'没有重载需要3个参数。我试过我在这里和网上其他地方找到的各种修复,但没有任何效果。
有人能告诉我如何正确显示值(每行1个孩子),甚至如何正确使用表格来显示孩子?
提前致谢!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.Diagnostics;
using System.Collections;
namespace Coursework
{
public partial class View_remove_children : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection connect = new SqlConnection("Data Source=THEBEAST;Initial Catalog=newregDB;Integrated Security=True;Pooling=False");
connect.Open();
SqlCommand cmd = new SqlCommand("SELECT [firstname], [dob], [ChildID] FROM [children]");
cmd.CommandType = System.Data.CommandType.Text;
cmd.Connection = connect;
//string temp = "";
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
{
//temp += reader["firstname"].ToString();
//temp += reader["dob"].ToString();
//temp += reader["gender"].ToString();
//temp += "<br/>";
ListBox1.Items.Add(reader["firstname"], reader["dob"], reader["ChildID"]);
}
connect.Close();
}
}
}
}
答案 0 :(得分:3)
如果您需要表视图,最好使用GridView,将GridView控件拖放到设计器视图中,并执行以下操作
using(SqlConnection connect = new SqlConnection("Data Source=THEBEAST;Initial Catalog=newregDB;Integrated Security=True;Pooling=False"))
using(SqlCommand cmd = new SqlCommand("SELECT [firstname], [dob], [ChildID] FROM [children]", connect))
{
connect.Open();
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
sda.Fill(dt);
GridView1.DataSource = dt; //give your gridview name here
GridView1.DataBind();//give your gridview name here
}
尝试一些关于gridview分组,编辑,插入等的教程。然后你可以自己决定是否适合你的要求。
Implement GridView Grouping: Group similar GridView Rows in ASP.Net
Simple Insert Select Edit Update and Delete in ASP.Net GridView control
答案 1 :(得分:0)
我会将连接字符串存储在.Config文件中,然后我会执行以下操作并将此代码放在静态方法中,例如
public static DataTable SelectData()
{
var ConnString = ConfigurationManager.ConnectionStrings["YourConnectionString"].ConnectionString;
SqlDataAdapter sda;
DataTable dt;
using (SqlConnection connStr = new SqlConnection(ConnString))
{
using (SqlCommand cmd = new SqlCommand("SELECT firstname, dob, ChildID FROM children", connStr))
{
cmd.CommandType = CommandType.Text;
sda = new SqlDataAdapter(cmd);
dt = new DataTable();
new SqlDataAdapter(cmd).Fill(dt);
}
}
return dt;
}