计划实现用省份查询学生,可以通过下拉菜单改变省份获取不同学生的名单以及信息。网页打开之后就显示这样
:
找了好几天都没有找到原因,查了CSDN上关于无法访问网站的解决办法也无解,后来问老师说是代码问题,但是找了几天都没找出来 头都要炸了,求助!!!代码有点多,拜托了!
下面这是我的网页代码以及我的定义的student和studentDB类的代码。
网页代码(后台没有代码)
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ProvinceSelect.aspx.cs" Inherits="ProvinceSelect" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ObjectDataSource ID="dsNative" runat="server" SelectMethod="getNatives" TypeName="studentDB"></asp:ObjectDataSource>
<asp:ObjectDataSource ID="dsStudentsByNative" runat="server" SelectMethod="getStudentsByNative" TypeName="studentDB">
<SelectParameters>
<asp:ControlParameter ControlID="ddlNative2" Name="sNative" PropertyName="SelectedValue" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<%-- <asp:DropDownList ID="ddlNative" runat="server" AutoPostBack="true" OnSelectedIndexChanged="BindStudent" ></asp:DropDownList>
<asp:BulletedList ID="bblStudent" runat="server"></asp:BulletedList>--%>
<asp:DropDownList ID="ddlNative2" runat="server" DataSourceID="dsNative" AutoPostBack="true"></asp:DropDownList>
<asp:GridView ID="gvStudent" runat="server" AutoPostBack="flase" DataSourceID="dsStudentsByNative" CellPadding="4"
GridLines="None">
<AlternatingRowStyle BackColor="White"/>
<Columns>
<%-- <asp:HyperLinkField DataNavigateUrlFields="sno"
DataNavigateUrlFormatString ="GridViewDetail.aspx?sno={0}"
HeaderText="查看" Text ="查看" />--%>
<asp:BoundField DataField="Sname" HeaderText="姓名" DataFormatString="{0:C}" />
<asp:BoundField DataField="Ssex" HeaderText="性别" DataFormatString="{0:C}" />
<asp:BoundField DataField="Snative" HeaderText="籍贯" DataFormatString="{0:C}" />
<asp:BoundField DataField="Sbirthday" HeaderText="出生日期" DataFormatString="{0:yyyy-MM-dd}" />
<asp:BoundField DataField="Sclassno" HeaderText="班级" DataFormatString="{0:C}" />
<asp:BoundField DataField="Sentime" HeaderText="入学日期" DataFormatString="{0:C}" />
</Columns>
<HeaderStyle BackColor="#C5E55" ForeColor="White" HorizontalAlign="center" />
<RowStyle BackColor="White"/>
<HeaderStyle />
</asp:GridView>
</div>
</form>
</body>`
</html>
student类的代码
using System;using System.Collections.Generic;
using System.Linq;
using System.Web;
/// <summary>
/// Class1 的摘要说明
/// </summary>
public class student
{
private string sno;
public string Sno
{
get { return sno; }
set { sno = value; }
}
private string sname;
public string Sname
{
get { return sname; }
set { sname = value; }
}
private string ssex;
public string Ssex
{
get { return ssex; }
set { ssex = value; }
}
private string sNative;
public string Snative
{
get { return Snative; }
set { Snative = value; }
}
private string sbirthday;
public string Sbirthday
{
get { return sbirthday; }
set { sbirthday = value; }
}
private string sdno;
public string SDno
{
get { return sdno; }
set { sdno = value; }
}
private string sclassno;
public string SClassNo
{
get { return sclassno; }
set { sclassno = value; }
}
private string sentime;
public string SEntime
{
get { return sentime; }
set { sentime = value; }
}
private string shome;
public string SHome
{
get { return shome; }
set { shome = value; }
}
private string stel;
public string STel
{
get { return stel; }
set { stel = value; }
}
}
studentDB类的代码
using System;using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Text;
/// <summary>
/// studentDB 的摘要说明
/// </summary>
public class studentDB
{
//链接数据库
string strConn = ConfigurationManager.ConnectionStrings["student-course"].ToString();
//获取学生所在省份
public void updateStudent(string sNo, string sName, string sNative, string sClassno)//更新学生信息
{
using (SqlConnection objConn = new SqlConnection(strConn))
{
SqlCommand objCmd = objConn.CreateCommand();
objCmd.CommandText = "UPDATE Student SET Snative = @sNative,[email protected], SClassNo = @sClassno WHERE Sno = @Sno";
objCmd.Parameters.AddWithValue("@Sno", sNo);
objCmd.Parameters.AddWithValue("@Sname", sName);
objCmd.Parameters.AddWithValue("@Snative", sNative);
objCmd.Parameters.AddWithValue("@SClassNo", sClassno);
objConn.Open();
objCmd.ExecuteNonQuery();
objCmd.Dispose();
}
}
public student getStudent(string Sno) //根据学号获取学生信息
{
student student = null;
using (SqlConnection objConn = new SqlConnection(strConn))
{
SqlCommand objCmd = objConn.CreateCommand();
objCmd.CommandText = "SELECT * FROM student WHERE [email protected]";
objCmd.Connection = objConn;
objCmd.Parameters.AddWithValue("@Sno", Sno);
objConn.Open();
SqlDataReader objDr = objCmd.ExecuteReader();
if (objDr.Read())
{
student = new student();
student.Sno = objDr.GetString(0);
student.Sname = objDr.GetString(1);
student.Ssex = objDr.GetString(2);
student.Snative = objDr.GetString(4);
student.SDno = objDr.GetString(5);
student.SClassNo = objDr.GetString(6);
student.SEntime = objDr.GetDateTime(7).ToString();
student.SHome = objDr.GetString(8);
student.STel = objDr.GetString(9);
student.Sbirthday = objDr.GetDateTime(10).ToString();
}
objDr.Close();
objCmd.Dispose();
objConn.Dispose();
}
return student;
}
public List<String> getNatives()//获取省份
{
List<String> list = new List<String>();
using (SqlConnection objConn = new SqlConnection(strConn))
{
SqlCommand objCmd = new SqlCommand();
objCmd.CommandText = "SELECT DISTINCT Snative FROM student";
objCmd.Connection = objConn;
objConn.Open();
SqlDataReader objDr = objCmd.ExecuteReader();
while (objDr.Read())
{
list.Add(objDr.GetString(0));
}
objDr.Close();
objCmd.Dispose();
objConn.Dispose();
}
return list;
}
//根据籍贯获取学生
public List<student> getStudentsByNative(string Snative)//根据省份获取学生
{
List<student> list = new List<student>();
using (SqlConnection objConn = new SqlConnection(strConn))
{
SqlCommand objCmd = new SqlCommand();
objCmd.CommandText = "SELECT *FROM student WHERE [email protected]";
objCmd.Parameters.AddWithValue("@Snative", Snative);
objCmd.Connection = objConn;
objConn.Open();
SqlDataReader objDr = objCmd.ExecuteReader();
try
{
while (objDr.Read())
{
student student = new student();
student.Sno = objDr.GetString(0);
student.Sname = objDr.GetString(1);
student.Ssex = objDr.GetString(2);
student.Snative = objDr.GetString(4);
student.SDno = objDr.GetString(5);
student.SClassNo = objDr.GetString(6);
student.SEntime = objDr.GetDateTime(7).ToString();
student.SHome = objDr.GetString(8);
student.STel = objDr.GetString(9);
student.Sbirthday = objDr.GetDateTime(10).ToString();
list.Add(student);
objConn.Dispose();
}
}
catch { }
finally
{
objDr.Close();
objCmd.Dispose();
}
return list;
}
}
}