进行NUnit测试我的网站。

编程入门 行业动态 更新时间:2024-10-17 00:22:29
本文介绍了进行NUnit测试我的网站。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我是单元测试的新手;如果有人可以指导我的数据库驱动的网站进行单元测试会很有帮助。 这个网站的工作是将数据从excel上传/传输到数据库并显示记录在网格视图中。如果用户想要进行一些更改,例如编辑/删除数据,他/她将能够通过GridView完成。 我想使用NUnit,为我的网页进行单元测试。 我也附上代码供参考。如果有人可以在这个问题上帮助我,那将非常有帮助。 提前致谢。 Dipak 我的代码 -------------

I am new to unit testing; it would be helpful if anybody can guide to conduct unit testing for my database driven website. This website’s job is to upload/transfer data from excel to database and display records in the Grid View. If user wants to make some changes e.g. Edit/Delete to the data, he/she will be able to do it through GridView. I want to use NUnit, for conducting unit test for my web page. I am also attaching the code for reference. If anybody can help me in this issue it would be really helpful. Thanks in advance. Dipak My Code -------------

public partial class _Default : System.Web.UI.Page { string connectionString; //connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.BindData(); } else { GetData(); } } protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { /* Row Color + Hover */ e.Row.Attributes["onmouseover"] = "javascript:setMouseOverColor(this);"; e.Row.Attributes["onmouseout"] = "javascript:setMouseOutColor(this);"; } } protected void btnUpload_Click(object sender, EventArgs e) { //string connectionString = ""; if (FileUpload1.HasFile) { //string fileName = Path.GetFileName(FileUpload1.PostedFile.FileName); //string fileExtension = Path.GetExtension(FileUpload1.PostedFile.FileName); //string fileLocation = Server.MapPath("~/App_Data/" + fileName); //string fileLocation = Server.MapPath("~/App_Data/Excel_File/" + fileName); //FileUpload1.SaveAs(fileLocation); string fileName = Filechecker(); string fileLocation = Server.MapPath("~/App_Data/Excel_File/" + fileName); DataSet objds = new DataSet(); objds = ImportFromExcel(fileName, fileLocation); foreach (System.Data.DataTable dt in objds.Tables) { //string connectionString; connectionString = ""; connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; //Open a connection with destination database; using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); SqlBulkCopyColumnMapping mapping1 = new SqlBulkCopyColumnMapping(0, "cust_name"); SqlBulkCopyColumnMapping mapping2 = new SqlBulkCopyColumnMapping(1, "cust_address"); SqlBulkCopyColumnMapping mapping3 = new SqlBulkCopyColumnMapping(2, "cust_state"); //Open bulkcopy connection. using (SqlBulkCopy bulkcopy = new SqlBulkCopy(connection)) { bulkcopy.ColumnMappings.Add(mapping1); bulkcopy.ColumnMappings.Add(mapping2); bulkcopy.ColumnMappings.Add(mapping3); //Set destination table name //to table previously created. bulkcopy.DestinationTableName = "dbo.customer"; //Define column mappings try { bulkcopy.WriteToServer(dt); this.BindData(); } catch (Exception ex) { Page.Response.Write(ex.Message); } connection.Close(); } } } } } public DataSet ImportFromExcel(string file, string filepath) { // Create new dataset DataSet ds = new DataSet(); // -- Start of Constructing OLEDB connection string to Excel file Dictionary<string,> props = new Dictionary<string,>(); // For Excel 2007/2010 if (file.EndsWith(".xlsx")) { props["Provider"] = "Microsoft.ACE.OLEDB.12.0;"; props["Extended Properties"] = "Excel 12.0 XML"; } // For Excel 2003 and older else if (file.EndsWith(".xls")) { props["Provider"] = "Microsoft.Jet.OLEDB.4.0"; props["Extended Properties"] = "Excel 8.0"; } else return null; props["Data Source"] = filepath; StringBuilder sb = new StringBuilder(); foreach (KeyValuePair<string,> prop in props) { sb.Append(prop.Key); sb.Append(''=''); sb.Append(prop.Value); sb.Append('';''); } string connectionString = sb.ToString(); // -- End of Constructing OLEDB connection string to Excel file // Connecting to Excel File using (OleDbConnection conn = new OleDbConnection(connectionString)) { conn.Open(); OleDbCommand cmd = new OleDbCommand(); cmd.Connection = conn; // Get all Sheets in Excel File DataTable dtSheet = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); // Loop through all Sheets to get data foreach (DataRow dr in dtSheet.Rows) { string sheetName = dr["TABLE_NAME"].ToString(); // Get all rows from the Sheet cmd.CommandText = "SELECT * FROM [" + sheetName + "]"; DataTable dt = new DataTable(); dt.TableName = sheetName.Replace("$", string.Empty); OleDbDataAdapter da = new OleDbDataAdapter(cmd); da.Fill(dt); // Add table into DataSet ds.Tables.Add(dt); } cmd = null; conn.Close(); } return ds; } /*------------------------------------------------------------------------------------------------------------------------*/ private void BindData() { string strQuery = "select customer.cust_id,customer.cust_name," + "customer.cust_address,customer.date_of_sale," + "tbl_state.state_name" + " from customer, tbl_state where" + " customer.cust_state=tbl_state.state_id"; SqlCommand cmd = new SqlCommand(strQuery); //Page.Response.Write(strQuery); GridView1.DataSource = GetData(cmd); GridView1.DataBind(); } private DataTable GetData(SqlCommand cmd) { //string connectionString; connectionString = ""; connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; DataTable dt = new DataTable(); using (SqlConnection con = new SqlConnection(connectionString)) { using (SqlDataAdapter sda = new SqlDataAdapter()) { cmd.Connection = con; con.Open(); sda.SelectCommand = cmd; sda.Fill(dt); return dt; } } } protected void OnPaging(object sender, GridViewPageEventArgs e) { this.BindData(); GridView1.PageIndex = e.NewPageIndex; GridView1.DataBind(); SetData(); } protected void Delete(object sender, EventArgs e) { } protected void Edit(object sender, EventArgs e) { using (GridViewRow row = (GridViewRow)((LinkButton)sender).Parent.Parent) { this.txtID.ReadOnly = true; this.txtID.Text = row.Cells[1].Text; this.txtName.Text = row.Cells[2].Text; this.txtAddress.Text = row.Cells[3].Text; this.txtdate.Text = row.Cells[4].Text; connectionString = ""; connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; DataSet ds = new DataSet(); SqlConnection con = new SqlConnection(connectionString); con.Open(); SqlCommand sqlcmd = new SqlCommand("select state_id,state_name from tbl_state", con); SqlDataAdapter da = new SqlDataAdapter(sqlcmd); da.Fill(ds); this.ddState.DataSource = ds; this.ddState.DataTextField = "state_name"; this.ddState.DataValueField = "state_id"; this.ddState.DataBind(); this.ddState.Items.Insert(0, new ListItem("--Select--", "--Select--")); this.ddState.Items.FindByText(row.Cells[5].Text).Selected = true; //this.ddState.Text = row.Cells[4].Text; popup.Show(); con.Close(); } } protected void Add(object sender, EventArgs e) { this.txtID.ReadOnly = false; this.txtName.Text = string.Empty; this.txtAddress.Text = string.Empty; this.txtdate.Text = string.Empty; // //string connectionString; connectionString = ""; connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; DataSet ds = new DataSet(); SqlConnection con = new SqlConnection(connectionString); con.Open(); SqlCommand sqlcmd = new SqlCommand("select state_id,state_name from tbl_state", con); SqlDataAdapter da = new SqlDataAdapter(sqlcmd); da.Fill(ds); this.ddState.DataSource = ds; this.ddState.DataTextField = "state_name"; this.ddState.DataValueField = "state_id"; this.ddState.DataBind(); this.ddState.Items.Insert(0, new ListItem("--Select--", "--Select--")); popup.Show(); con.Close(); } protected void Save(object sender, EventArgs e) { Page.Validate(valSummary.ValidationGroup); if (!Page.IsValid) { update.Update(); modalPopupEx.Show(); popup.Show(); } else { using (SqlCommand cmd = new SqlCommand()) { cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "AddUpdateCust"; cmd.Parameters.AddWithValue("@ID", this.txtID.Text); cmd.Parameters.AddWithValue("@Name", this.txtName.Text); cmd.Parameters.AddWithValue("@Address", this.txtAddress.Text); cmd.Parameters.AddWithValue("@State", this.ddState.SelectedValue.ToString()); GridView1.DataSource = this.GetData(cmd); GridView1.DataBind(); } } } /*------------------------------------------------------------------------------------------------------------------------*/ protected void btnDelete_Click(object sender, EventArgs e) { int count = 0; SetData(); GridView1.AllowPaging = false; //GridView1.DataBind(); ArrayList arr = (ArrayList)ViewState["SelectedRecords"]; count = arr.Count; for (int i = 0; i < this.GridView1.Rows.Count; i++) { if (arr.Contains(GridView1.DataKeys[i].Value)) { DeleteRecord(GridView1.DataKeys[i].Value.ToString()); arr.Remove(GridView1.DataKeys[i].Value); } } ViewState["SelectedRecords"] = arr; hfCount.Value = "0"; GridView1.AllowPaging = true; BindData(); ShowMessage(count); } private void GetData() { ArrayList arr; if (ViewState["SelectedRecords"] != null) arr = (ArrayList)ViewState["SelectedRecords"]; else arr = new ArrayList(); CheckBox chkAll = (CheckBox)GridView1.HeaderRow .Cells[0].FindControl("chkAll"); for (int i = 0; i < GridView1.Rows.Count; i++) { if (chkAll.Checked) { if (!arr.Contains(GridView1.DataKeys[i].Value)) { arr.Add(GridView1.DataKeys[i].Value); } } else { CheckBox chk = (CheckBox)GridView1.Rows[i] .Cells[0].FindControl("chk"); if (chk.Checked) { if (!arr.Contains(GridView1.DataKeys[i].Value)) { arr.Add(GridView1.DataKeys[i].Value); } } else { if (arr.Contains(GridView1.DataKeys[i].Value)) { arr.Remove(GridView1.DataKeys[i].Value); } } } } ViewState["SelectedRecords"] = arr; } private void SetData() { int currentCount = 0; CheckBox chkAll = (CheckBox)GridView1.HeaderRow .Cells[0].FindControl("chkAll"); chkAll.Checked = true; ArrayList arr = (ArrayList)ViewState["SelectedRecords"]; for (int i = 0; i < GridView1.Rows.Count; i++) { CheckBox chk = (CheckBox)GridView1.Rows[i] .Cells[0].FindControl("chk"); if (chk != null) { chk.Checked = arr.Contains(GridView1.DataKeys[i].Value); if (!chk.Checked) chkAll.Checked = false; else currentCount++; } } hfCount.Value = (arr.Count - currentCount).ToString(); } private void ShowMessage(int count) { StringBuilder sb = new StringBuilder(); sb.Append("<script type = ''text/javascript''>"); sb.Append("alert(''"); sb.Append(count.ToString()); sb.Append(" records deleted.'');"); sb.Append("</script>"); ClientScript.RegisterStartupScript(this.GetType(), "script", sb.ToString()); } private void DeleteRecord(string CustomerID) { //string connectionString; connectionString = ""; connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; string query = "delete from customer " + "where cust_id=@CustomerID"; SqlConnection con = new SqlConnection(connectionString); SqlCommand cmd = new SqlCommand(query, con); cmd.Parameters.AddWithValue("@CustomerID", CustomerID); con.Open(); cmd.ExecuteNonQuery(); con.Close(); } /*--------------------------------------------------------------------------------------------------------*/ private string Filechecker() { try { string UpPath = Server.MapPath("~/App_Data/Excel_File/"); //the directory you want the file uploaded to //create directory if it doesn''t already exist if (!Directory.Exists(UpPath)) Directory.CreateDirectory(UpPath.Replace("\\", "\\\\")); string FileName = FileUpload1.PostedFile.FileName; string FileType = FileUpload1.PostedFile.ContentType; string FileSize = FileUpload1.PostedFile.ContentLength.ToString(); string ClientFile = System.IO.Path.GetFileName(FileName); FileInfo ServerFile = new FileInfo(UpPath.Replace("\\", "\\\\") + "\\" + ClientFile); int idx = 1; //increment a number on the end of the filename until it is unique to stop files being overwritten //will cope with filenames with multiple dots (eg. sunset.photo.12.jpg) while (ServerFile.Exists) { string[] filename = ClientFile.Split(''.''); ClientFile = ""; int prevIdx = idx - 1; if (idx > 1) { for (int i = 0; i < filename.GetUpperBound(0); i++) { ClientFile += filename[i]; if (i < filename.GetUpperBound(0) - 1) ClientFile += "."; } ClientFile = ClientFile.Substring(0, ClientFile.Length - prevIdx.ToString().Length) + idx.ToString() + "." + filename[filename.GetUpperBound(0)]; } else { for (int i = 0; i < filename.GetUpperBound(0); i++) { ClientFile += filename[i]; if (i < filename.GetUpperBound(0) - 1) ClientFile += "."; } ClientFile += idx.ToString() + "." + filename[filename.GetUpperBound(0)]; } ServerFile = new FileInfo(UpPath.Replace("\\", "\\\\") + "\\" + ClientFile); idx++; } //save file to server FileUpload1.PostedFile.SaveAs(UpPath.Replace("\\", "\\\\") + "\\" + ClientFile); return ClientFile; } catch (Exception ex) { throw ex; } } protected void btnExport_Click(object sender, EventArgs e) { Response.Clear(); Response.AddHeader("content-disposition","attachment;filename=FileName.xls"); Response.Charset = ""; // If you want the option to open the Excel file without saving than // comment out the line below // Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.ContentType = "application/vnd.xls"; System.IO.StringWriter stringWrite = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite); // turn off paging GridView1.AllowPaging = false; //BindData(); if (this.txtSearch.Text == "") { BindData(); } else { SearchText(); } GridView1.RenderControl(htmlWrite); Response.Write(stringWrite.ToString()); Response.End(); // turn the paging on again GridView1.AllowPaging = true; //BindData(); if (this.txtSearch.Text == "") { BindData(); } else { SearchText(); } } public override void VerifyRenderingInServerForm(Control control) { //this.VerifyRenderingInServerForm(this.GridView1); } protected void txtSearch_TextChanged(object sender, EventArgs e) { SearchText(); } private void SearchText() { string strQuery = "select customer.cust_id,customer.cust_name," + "customer.cust_address,customer.date_of_sale," + "tbl_state.state_name" + " from customer, tbl_state where" + " customer.cust_state=tbl_state.state_id And tbl_state.state_name=''" + this.txtSearch.Text + "''"; SqlCommand cmd = new SqlCommand(strQuery); //Page.Response.Write(strQuery); GridView1.DataSource = GetData(cmd); GridView1.DataBind(); } }

推荐答案

,string.Empty); OleDbDataAdapter da = new OleDbDataAdapter(cmd); da.Fill(dt); //将表添加到DataSet ds.Tables.Add(dt); } cmd = null; conn.Close(); } 返回ds; } / * -------------------------------------------------- -------------------------------------------------- -------------------- * / private void BindData() { string strQuery =select customer.cust_id,customer .cust_name,+ customer.cust_address,customer.date_of_sale,+ tbl_state.state_name+ 来自客户,tbl_state,其中+ customer.cust_state = tbl_state.state_id; SqlCommand cmd = new SqlCommand(strQuery); //Page.Response.Write(strQuery); GridView1.DataSource = GetData(cmd); GridView1.DataBind(); } private DataTable GetData(SqlCommand cmd) { // string connectionString; connectionString =; connectionString =Integrated Security = SSPI; Persist Security Info = False; User ID = sa; Initial Catalog = TEST_DB; Data Source = DELL-PC; DataTable dt = new DataTable(); using(SqlConnection con = new SqlConnection(connectionString)) { using(SqlDataAdapter sda = new SqlDataAdapter()) { cmd.Connection = con; con.Open(); sda.SelectCommand = cmd; sda.Fill(dt); 返回dt; } } } protected void OnPaging(对象发送者,GridViewPageEventArgs e) { this.BindData(); GridView1.PageIndex = e.NewPageIndex; GridView1.DataBind(); SetData(); } protected void删除(对象发送者,EventArgs e) { } protected void编辑(对象发送者,EventArgs e) { using(GridViewRow row =(GridViewRow)((LinkBut​​ton)sender).Parent.Parent) { this.txtID.ReadOnly = true; this.txtID.Text = row.Cells [1] .Text; this.txtName.Text = row.Cells [2] .Text; this.txtAddress.Text = row.Cells [3] .Text; this.txtdate.Text = row.Cells [4] .Text; connectionString =; connectionString =Integrated Security = SSPI; Persist Security Info = False; User ID = sa; Initial Catalog = TEST_DB; Data Source = DELL-PC; DataSet ds = new DataSet(); SqlConnection con = new SqlConnection(connectionString); con.Open(); SqlCommand sqlcmd = new SqlCommand(select state_id,state_name from tbl_state,con); SqlDataAdapter da = new SqlDataAdapter(sqlcmd); da.Fill(ds); this.ddState.DataSource = ds; this.ddState.DataTextField =state_name; this.ddState.DataValueField =state_id; this.ddState.DataBind(); this.ddState.Items.Insert(0,new ListItem( - Select - , - Select--)); this.ddState.Items.FindByText(row.Cells [5] .Text).Selected = true; //this.ddState.Text = row.Cells [4] .Text; popup.Show(); con.Close(); } } protected void Add(object sender,EventArgs e) { this.txtID.ReadOnly = false; this.txtName.Text = string.Empty; this.txtAddress.Text = string.Empty; this.txtdate.Text = string.Empty; // //字符串连接字符串; connectionString =; connectionString =Integrated Security = SSPI; Persist Security Info = False; User ID = sa; Initial Catalog = TEST_DB; Data Source = DELL-PC; DataSet ds = new DataSet(); SqlConnection con = new SqlConnection(connectionString); con.Open(); SqlCommand sqlcmd = new SqlCommand(select state_id,state_name from tbl_state,con); SqlDataAdapter da = new SqlDataAdapter(sqlcmd); da.Fill(ds); this.ddState.DataSource = ds; this.ddState.DataTextField =state_name; this.ddState.DataValueField =state_id; this.ddState.DataBind(); this.ddState.Items.Insert(0,new ListItem( - Select - , - Select--)); popup.Show(); con.Close(); } protected void保存(对象发送者,EventArgs e) { Page.Validate(valSummary.ValidationGroup); if(!Page.IsValid) { update.Update(); modalPopupEx.Show(); popup.Show(); } 其他 { 使用(SqlCommand cmd = new SqlCommand()) { cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText =AddUpdateCust; cmd.Parameters.AddWithValue(@ ID,this.txtID.Text); cmd.Parameters.AddWithValue(@ Name,this.txtName.Text); cmd.Parameters.AddWithValue(@ Address,this.txtAddress.Text); cmd.Parameters.AddWithValue(@ State,this.ddState.SelectedValue.ToString()); GridView1.DataSource = this.GetData(cmd); GridView1.DataBind(); } } } / * ----------------------------- -------------------------------------------------- ----------------------------------------- * / protected void btnDelete_Click(object sender,EventArgs e) { int count = 0; SetData(); GridView1.AllowPaging = false; //GridView1.DataBind(); ArrayList arr =(ArrayList)ViewState [SelectedRecords]; count = arr.Count; for(int i = 0; i< this.GridView1.Rows.Count; i ++) { if(arr.Contains(GridView1.DataKeys [i] .Value)) { DeleteRecord(GridView1.DataKeys [i] .Value.ToString()); arr.Remove(GridView1.DataKeys [i] .Value); } } ViewState [SelectedRecords] = arr; hfCount.Value =0; GridView1.AllowPaging = true; BindData(); ShowMessage(count); } private void GetData() { ArrayList arr; if(ViewState [SelectedRecords]!= null) arr =(ArrayList)ViewState [SelectedRecords]; else arr = new ArrayList(); CheckBox chkAll =(CheckBox)GridView1.HeaderRow .Cells [0] .FindControl(chkAll); for(int i = 0; i< GridView1.Rows.Count; i ++) { if(chkAll.Checked) { if(!arr.Contains(GridView1.DataKeys [i] .Value)) { arr.Add(GridView1.DataKeys [i] .Value ); } } 其他 { CheckBox chk =(CheckBox)GridView1.Rows [ i] .Cells [0] .FindControl(chk); if(chk.Checked) { if(!arr.Contains(GridView1.DataKeys [i] .Value)) { arr.Add(GridView1.DataKeys [i] .Value); } } 其他 { if(arr.Contains(GridView1.DataKeys [ i] .Value)) { arr.Remove(GridView1.DataKeys [i] .Value); } } } } ViewState [SelectedRecords] = arr; } private void SetData() { int currentCount = 0; CheckBox chkAll = (CheckBox)GridView1.HeaderRow .Cells[0].FindControl(\"chkAll\"); chkAll.Checked = true; ArrayList arr = (ArrayList)ViewState[\"SelectedRecords\"]; for (int i = 0; i < GridView1.Rows.Count; i++) { CheckBox chk = (CheckBox)GridView1.Rows[i] .Cells[0].FindControl(\"chk\"); if (chk != null) { chk.Checked = arr.Contains(GridView1.DataKeys[i].Value); if (!chk.Checked) chkAll.Checked = false; else currentCount++; } } hfCount.Value = (arr.Count - currentCount).ToString(); } private void ShowMessage(int count) { StringBuilder sb = new StringBuilder(); sb.Append(\"<script type = ’’text/javascript’’>\"); sb.Append(\"alert(’’\"); sb.Append(count.ToString()); sb.Append(\" records deleted.’’);\"); sb.Append(\"</script>\"); ClientScript.RegisterStartupScript(this.GetType(), \"script\", sb.ToString()); } private void DeleteRecord(string CustomerID) { //string connectionString; connectionString = \"\"; connectionString = \"Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC\"; string query = \"delete from customer \" + \"where cust_id=@CustomerID\"; SqlConnection con = new SqlConnection(connectionString); SqlCommand cmd = new SqlCommand(query,con); cmd.Parameters.AddWithValue(\"@CustomerID\", CustomerID); con.Open(); cmd.ExecuteNonQuery(); con.Close(); } /*--------------------------------------------------------------------------------------------------------*/ private string Filechecker() { try { string UpPath = Server.MapPath(\"~/App_Data/Excel_File/\"); //the directory you want the file uploaded to //create directory if it doesn’’t already exist if (!Directory.Exists(UpPath)) Directory.CreateDirectory(UpPath.Replace(\"\\\", \"\\")); string FileName = FileUpload1.PostedFile.FileName; string FileType = FileUpload1.PostedFile.ContentType; string FileSize = FileUpload1.PostedFile.ContentLength.ToString(); string ClientFile = System.IO.Path.GetFileName(FileName); FileInfo ServerFile = new FileInfo(UpPath.Replace(\"\\\", \"\\") + \"\\\" + ClientFile); int idx = 1; //increment a number on the end of the filename until it is unique to stop files being overwritten //will cope with filenames with multiple dots (eg. sunset.photo.12.jpg) while (ServerFile.Exists) { string[] filename = ClientFile.Split(’’.’’); ClientFile = \"\"; int prevIdx = idx - 1; if (idx > 1) { for (int i = 0; i < filename.GetUpperBound(0); i++) { ClientFile += filename[i]; if (i < filename.GetUpperBound(0) - 1) ClientFile += \".\"; } ClientFile = ClientFile.Substring(0, ClientFile.Length - prevIdx.ToString().Length) + idx.ToString() + \".\" + filename[filename.GetUpperBound(0)]; } else { for (int i = 0; i < filename.GetUpperBound(0); i++) { ClientFile += filename[i]; if (i < filename.GetUpperBound(0) - 1) ClientFile += \".\"; } ClientFile += idx.ToString() + \".\" + filename[filename.GetUpperBound(0)]; } ServerFile = new FileInfo(UpPath.Replace(\"\\\", \"\\") + \"\\\" + ClientFile); idx++; } //save file to server FileUpload1.PostedFile.SaveAs(UpPath.Replace(\"\\\", \"\\") + \"\\\" + ClientFile); return ClientFile; } catch (Exception ex) { throw ex; } } protected void btnExport_Click(object sender, EventArgs e) { Response.Clear(); Response.AddHeader(\"content-disposition\",\"attachment;filename=FileName.xls\"); Response.Charset =; // If you want the option to open the Excel file without saving than // comment out the line below // Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.ContentType = \"application/vnd.xls\"; System.IO.StringWriter stringWrite = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite); // turn off paging GridView1.AllowPaging = false; //BindData(); if (this.txtSearch.Text == \"\") { BindData(); } else { SearchText(); } GridView1.RenderControl(htmlWrite); Response.Write(stringWrite.ToString()); Response.End(); // turn the paging on again GridView1.AllowPaging = true; //BindData(); if (this.txtSearch.Text == \"\") { BindData(); } else { SearchText(); } } public override void VerifyRenderingInServerForm(Control control) { //this.VerifyRenderingInServerForm(this.GridView1); } protected void txtSearch_TextChanged(object sender, EventArgs e) { SearchText(); } private void SearchText() { string strQuery = \"select customer.cust_id,customer.cust_name,\" + \"customer.cust_address,customer.date_of_sale,\" + \"tbl_state.state_name\" + \" from customer, tbl_state where\" + \" customer.cust_state=tbl_state.state_id And tbl_state.state_name=’’\" + this.txtSearch.Text + \"’’\"; SqlCommand cmd = new SqlCommand(strQuery); //Page.Response.Write(strQuery); GridView1.DataSource = GetData(cmd); GridView1.DataBind(); } } ", string.Empty); OleDbDataAdapter da = new OleDbDataAdapter(cmd); da.Fill(dt); // Add table into DataSet ds.Tables.Add(dt); } cmd = null; conn.Close(); } return ds; } /*------------------------------------------------------------------------------------------------------------------------*/ private void BindData() { string strQuery = "select customer.cust_id,customer.cust_name," + "customer.cust_address,customer.date_of_sale," + "tbl_state.state_name" + " from customer, tbl_state where" + " customer.cust_state=tbl_state.state_id"; SqlCommand cmd = new SqlCommand(strQuery); //Page.Response.Write(strQuery); GridView1.DataSource = GetData(cmd); GridView1.DataBind(); } private DataTable GetData(SqlCommand cmd) { //string connectionString; connectionString = ""; connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; DataTable dt = new DataTable(); using (SqlConnection con = new SqlConnection(connectionString)) { using (SqlDataAdapter sda = new SqlDataAdapter()) { cmd.Connection = con; con.Open(); sda.SelectCommand = cmd; sda.Fill(dt); return dt; } } } protected void OnPaging(object sender, GridViewPageEventArgs e) { this.BindData(); GridView1.PageIndex = e.NewPageIndex; GridView1.DataBind(); SetData(); } protected void Delete(object sender, EventArgs e) { } protected void Edit(object sender, EventArgs e) { using (GridViewRow row = (GridViewRow)((LinkButton)sender).Parent.Parent) { this.txtID.ReadOnly = true; this.txtID.Text = row.Cells[1].Text; this.txtName.Text = row.Cells[2].Text; this.txtAddress.Text = row.Cells[3].Text; this.txtdate.Text = row.Cells[4].Text; connectionString = ""; connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; DataSet ds = new DataSet(); SqlConnection con = new SqlConnection(connectionString); con.Open(); SqlCommand sqlcmd = new SqlCommand("select state_id,state_name from tbl_state", con); SqlDataAdapter da = new SqlDataAdapter(sqlcmd); da.Fill(ds); this.ddState.DataSource = ds; this.ddState.DataTextField = "state_name"; this.ddState.DataValueField = "state_id"; this.ddState.DataBind(); this.ddState.Items.Insert(0, new ListItem("--Select--", "--Select--")); this.ddState.Items.FindByText(row.Cells[5].Text).Selected = true; //this.ddState.Text = row.Cells[4].Text; popup.Show(); con.Close(); } } protected void Add(object sender, EventArgs e) { this.txtID.ReadOnly = false; this.txtName.Text = string.Empty; this.txtAddress.Text = string.Empty; this.txtdate.Text = string.Empty; // //string connectionString; connectionString = ""; connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; DataSet ds = new DataSet(); SqlConnection con = new SqlConnection(connectionString); con.Open(); SqlCommand sqlcmd = new SqlCommand("select state_id,state_name from tbl_state", con); SqlDataAdapter da = new SqlDataAdapter(sqlcmd); da.Fill(ds); this.ddState.DataSource = ds; this.ddState.DataTextField = "state_name"; this.ddState.DataValueField = "state_id"; this.ddState.DataBind(); this.ddState.Items.Insert(0, new ListItem("--Select--", "--Select--")); popup.Show(); con.Close(); } protected void Save(object sender, EventArgs e) { Page.Validate(valSummary.ValidationGroup); if (!Page.IsValid) { update.Update(); modalPopupEx.Show(); popup.Show(); } else { using (SqlCommand cmd = new SqlCommand()) { cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "AddUpdateCust"; cmd.Parameters.AddWithValue("@ID", this.txtID.Text); cmd.Parameters.AddWithValue("@Name", this.txtName.Text); cmd.Parameters.AddWithValue("@Address", this.txtAddress.Text); cmd.Parameters.AddWithValue("@State", this.ddState.SelectedValue.ToString()); GridView1.DataSource = this.GetData(cmd); GridView1.DataBind(); } } } /*------------------------------------------------------------------------------------------------------------------------*/ protected void btnDelete_Click(object sender, EventArgs e) { int count = 0; SetData(); GridView1.AllowPaging = false; //GridView1.DataBind(); ArrayList arr = (ArrayList)ViewState["SelectedRecords"]; count = arr.Count; for (int i = 0; i < this.GridView1.Rows.Count; i++) { if (arr.Contains(GridView1.DataKeys[i].Value)) { DeleteRecord(GridView1.DataKeys[i].Value.ToString()); arr.Remove(GridView1.DataKeys[i].Value); } } ViewState["SelectedRecords"] = arr; hfCount.Value = "0"; GridView1.AllowPaging = true; BindData(); ShowMessage(count); } private void GetData() { ArrayList arr; if (ViewState["SelectedRecords"] != null) arr = (ArrayList)ViewState["SelectedRecords"]; else arr = new ArrayList(); CheckBox chkAll = (CheckBox)GridView1.HeaderRow .Cells[0].FindControl("chkAll"); for (int i = 0; i < GridView1.Rows.Count; i++) { if (chkAll.Checked) { if (!arr.Contains(GridView1.DataKeys[i].Value)) { arr.Add(GridView1.DataKeys[i].Value); } } else { CheckBox chk = (CheckBox)GridView1.Rows[i] .Cells[0].FindControl("chk"); if (chk.Checked) { if (!arr.Contains(GridView1.DataKeys[i].Value)) { arr.Add(GridView1.DataKeys[i].Value); } } else { if (arr.Contains(GridView1.DataKeys[i].Value)) { arr.Remove(GridView1.DataKeys[i].Value); } } } } ViewState["SelectedRecords"] = arr; } private void SetData() { int currentCount = 0; CheckBox chkAll = (CheckBox)GridView1.HeaderRow .Cells[0].FindControl("chkAll"); chkAll.Checked = true; ArrayList arr = (ArrayList)ViewState["SelectedRecords"]; for (int i = 0; i < GridView1.Rows.Count; i++) { CheckBox chk = (CheckBox)GridView1.Rows[i] .Cells[0].FindControl("chk"); if (chk != null) { chk.Checked = arr.Contains(GridView1.DataKeys[i].Value); if (!chk.Checked) chkAll.Checked = false; else currentCount++; } } hfCount.Value = (arr.Count - currentCount).ToString(); } private void ShowMessage(int count) { StringBuilder sb = new StringBuilder(); sb.Append("<script type = ''text/javascript''>"); sb.Append("alert(''"); sb.Append(count.ToString()); sb.Append(" records deleted.'');"); sb.Append("</script>"); ClientScript.RegisterStartupScript(this.GetType(), "script", sb.ToString()); } private void DeleteRecord(string CustomerID) { //string connectionString; connectionString = ""; connectionString = "Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TEST_DB;Data Source=DELL-PC"; string query = "delete from customer " + "where cust_id=@CustomerID"; SqlConnection con = new SqlConnection(connectionString); SqlCommand cmd = new SqlCommand(query, con); cmd.Parameters.AddWithValue("@CustomerID", CustomerID); con.Open(); cmd.ExecuteNonQuery(); con.Close(); } /*--------------------------------------------------------------------------------------------------------*/ private string Filechecker() { try { string UpPath = Server.MapPath("~/App_Data/Excel_File/"); //the directory you want the file uploaded to //create directory if it doesn''t already exist if (!Directory.Exists(UpPath)) Directory.CreateDirectory(UpPath.Replace("\\", "\\\\")); string FileName = FileUpload1.PostedFile.FileName; string FileType = FileUpload1.PostedFile.ContentType; string FileSize = FileUpload1.PostedFile.ContentLength.ToString(); string ClientFile = System.IO.Path.GetFileName(FileName); FileInfo ServerFile = new FileInfo(UpPath.Replace("\\", "\\\\") + "\\" + ClientFile); int idx = 1; //increment a number on the end of the filename until it is unique to stop files being overwritten //will cope with filenames with multiple dots (eg. sunset.photo.12.jpg) while (ServerFile.Exists) { string[] filename = ClientFile.Split(''.''); ClientFile = ""; int prevIdx = idx - 1; if (idx > 1) { for (int i = 0; i < filename.GetUpperBound(0); i++) { ClientFile += filename[i]; if (i < filename.GetUpperBound(0) - 1) ClientFile += "."; } ClientFile = ClientFile.Substring(0, ClientFile.Length - prevIdx.ToString().Length) + idx.ToString() + "." + filename[filename.GetUpperBound(0)]; } else { for (int i = 0; i < filename.GetUpperBound(0); i++) { ClientFile += filename[i]; if (i < filename.GetUpperBound(0) - 1) ClientFile += "."; } ClientFile += idx.ToString() + "." + filename[filename.GetUpperBound(0)]; } ServerFile = new FileInfo(UpPath.Replace("\\", "\\\\") + "\\" + ClientFile); idx++; } //save file to server FileUpload1.PostedFile.SaveAs(UpPath.Replace("\\", "\\\\") + "\\" + ClientFile); return ClientFile; } catch (Exception ex) { throw ex; } } protected void btnExport_Click(object sender, EventArgs e) { Response.Clear(); Response.AddHeader("content-disposition","attachment;filename=FileName.xls"); Response.Charset = ""; // If you want the option to open the Excel file without saving than // comment out the line below // Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.ContentType = "application/vnd.xls"; System.IO.StringWriter stringWrite = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite); // turn off paging GridView1.AllowPaging = false; //BindData(); if (this.txtSearch.Text == "") { BindData(); } else { SearchText(); } GridView1.RenderControl(htmlWrite); Response.Write(stringWrite.ToString()); Response.End(); // turn the paging on again GridView1.AllowPaging = true; //BindData(); if (this.txtSearch.Text == "") { BindData(); } else { SearchText(); } } public override void VerifyRenderingInServerForm(Control control) { //this.VerifyRenderingInServerForm(this.GridView1); } protected void txtSearch_TextChanged(object sender, EventArgs e) { SearchText(); } private void SearchText() { string strQuery = "select customer.cust_id,customer.cust_name," + "customer.cust_address,customer.date_of_sale," + "tbl_state.state_name" + " from customer, tbl_state where" + " customer.cust_state=tbl_state.state_id And tbl_state.state_name=''" + this.txtSearch.Text + "''"; SqlCommand cmd = new SqlCommand(strQuery); //Page.Response.Write(strQuery); GridView1.DataSource = GetData(cmd); GridView1.DataBind(); } }

NUnitAsp is a tool for automatically testing ASP.NET web pages. [^]-It’’s an extension to NUnit, a tool for test-driven development in .NET. NUnitAsp tutorial[^] Unit Testing and Integration Testing in Business Applications[^] Mock objects and testing code which uses the database[^] Unit testing enumerations which map to a database table[^] Data driven test cases in NUnit[^] Approach to unit testing of .NET database applications with NDbUnit and XPath queries[^] 12 Important FAQ’s on VSTS Testing (Unit testing, load testing, automated testing, database testing and code coverage)[^] Unit Testing Database Library[^] NUnitAsp is a tool for automatically testing ASP.NET web pages. [^]-It''s an extension to NUnit, a tool for test-driven development in .NET. NUnitAsp tutorial[^] Unit Testing and Integration Testing in Business Applications[^] Mock objects and testing code which uses the database[^] Unit testing enumerations which map to a database table[^] Data driven test cases in NUnit[^] Approach to unit testing of .NET database applications with NDbUnit and XPath queries[^] 12 Important FAQ’s on VSTS Testing (Unit testing, load testing, automated testing, database testing and code coverage)[^] Unit Testing Database Library[^]

更多推荐

进行NUnit测试我的网站。

本文发布于:2023-11-06 23:56:50,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1565007.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:测试   网站   NUnit

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!