⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 managequestion.aspx.cs

📁 网上自动答疑系统(C#)
💻 CS
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Text;

namespace dayi
{
	/// <summary>
	/// manageQuestion 的摘要说明。
	/// </summary>
	public class manageQuestion : System.Web.UI.Page
	{
		protected System.Web.UI.WebControls.Label Label1;
		protected System.Web.UI.WebControls.Button btnDelete;

		dayi.controlDatabase cd=new controlDatabase();

		private string showQuestionsList(string type,string image,string viewQuestionPage,int pageCount,int curPage)
		{
			//显示某一栏目下的所有问题记录
			//type:显示类别,all为显示全部,ok为显示已回答,no显示未回答
			//image:图标名
			//viewQuestionPage:显示问题内容的网页(showQuestion.aspx)
			//pageCount:每页多少条记录
			//curPage:当前页
			//返回问题记录字符串
			//-------------------------
			//初始化参数
			if(image=="")
				image="<img src='images/file.gif'>";
			else
				image="<img src='images/"+image+"'>";

			if(viewQuestionPage=="")
				viewQuestionPage="<a href=showQuestion.aspx?questionID=";
			else
				viewQuestionPage="<a href="+viewQuestionPage+"?questionID=";

			if(pageCount<=0)
				pageCount=15;
			//--------------------------
			StringBuilder returnValue=new StringBuilder();

			string boardid=Session["userType"].ToString().Substring(6);

			string sql="select * from [questions] where rootID="+boardid+" order by askTime desc"; 
			if(type=="ok")
			{
				sql="select * from [questions] where rootID="+boardid+" and answered=1 order by askTime desc"; 
			}
			if(type=="no")
			{
				sql="select * from [questions] where rootID="+boardid+" and answered=0 order by askTime desc"; 
			}

			int totalRecord=0;//总记录数
			int totalPage=0;//总页数
			try
			{
				DataTable dt=cd.getDataTable(sql);
				//得到总记录数
				totalRecord=dt.Rows.Count;
				//得到总页数
				totalPage=(totalRecord+pageCount-1)/pageCount;

				if(curPage<=0)
					curPage=1;
				else if(curPage>totalPage)
					curPage=totalPage;

				//SqlDataReader reader=(SqlDataReader)this.sqlDataReader(sql);
				if(totalPage>0)
				{
					returnValue.Append("<table width=\"600\" border=\"0\" cellpadding=\"1\" cellspacing=\"1\" bgcolor=\"#003366\"><tr bgcolor=\"#0066CC\">");
					returnValue.Append("<td width=\"52\"><div align=\"center\" class=\"style1\">删除</div></td>");
					returnValue.Append("<td width=\"146\"><div align=\"center\" class=\"style1\">问题标题</div></td>");
					returnValue.Append("<td width=\"76\"><div align=\"center\" class=\"style1\">提问者</div></td>");
					returnValue.Append("<td width=\"99\"><div align=\"center\" class=\"style1\">提问时间</div></td>");
					returnValue.Append("<td width=\"48\"><div align=\"center\" class=\"style1\">访问量</div></td>");
					returnValue.Append("<td width=\"160\"><div align=\"center\" class=\"style1\">操作</div></td></tr>");
					//实现分页
					int startLine=(curPage-1)*pageCount;

					DataRow row;
					for(int i=startLine;i<(pageCount+startLine);i++)
					{
						//Response.Write(i.ToString());
						//startLine+=i;
						if(i<totalRecord)
						{
							row=dt.Rows[i];
							string manage="<a href=modifyQuestion.aspx?from=master&questionID="+row["id"].ToString()+">修改问题</a>|";
							if(row["answered"].ToString()=="0")
							{
								manage+="<a href=answerOrModifyQuestion.aspx?type=answer&questionID="+row["id"].ToString()+">回答问题</a>|";
							}
							if(row["answered"].ToString()=="1")
							{
								manage+="<a href=answerOrModifyQuestion.aspx?type=modify&questionID="+row["id"].ToString()+">修改回答</a>|";
							}
							manage+="<a href=deleteQuestion.aspx?from=master&type="+type+"&questionID="+row["id"].ToString()+">删除</a>";

							returnValue.Append("<tr bgcolor=\"#FFFFFF\"><td height=\"35\"><div align=\"center\"><INPUT type=\"checkbox\" name=\"chkDelete\" value=\""+row["id"].ToString()+"\"></div></td>");
							returnValue.Append("<td><div align=\"left\">&nbsp;"+image+viewQuestionPage+row["id"].ToString()+" target=\"_black\">"+row["subject"].ToString()+"</a></div></td>");
							returnValue.Append("<td><div align=\"center\">"+row["askUser"].ToString().Trim()+"</div></td>");
							returnValue.Append("<td><div align=\"center\">"+row["askTime"].ToString().Trim()+"</div></td>");
							returnValue.Append("<td><div align=\"center\">"+row["accessCount"].ToString().Trim()+"</div></td>");
							returnValue.Append("<td><div align=\"center\">"+manage+"</div></td></tr>");
						}
						else
						{
							break;
						}
					}
					returnValue.Append("</table>");
					if(totalPage>1)
					{
						returnValue.Append(cd.showPageString("<a href=manageQuestion.aspx?type="+type,curPage,totalPage,pageCount,totalRecord));
					}
					return returnValue.ToString();
				}
				else
				{
					//返回空
					return "";
				}
			}
			catch(Exception)
			{
				throw new Exception();
			}
		}
		private void Page_Load(object sender, System.EventArgs e)
		{
			if(Session["userType"].ToString().IndexOf("master")<0)
			{
				//身份验证
				Response.Redirect("err.aspx?err=没有权限,可能没有登录");
			}
			string type="all";//显示类型,全部或者是已经回答或没回答的
			int page=1;//分页显示的当前页
			try
			{
				if(Request.QueryString["type"]!=null)
				{
					type=Request.QueryString["type"].ToString();
				}
				if(Request.QueryString["page"]!=null)
				{
					page=Convert.ToInt32(Request.QueryString["page"].ToString());
				}

				this.Label1.Text=this.showQuestionsList(type,"","",20,page);

				if(this.Label1.Text.Trim()=="")//控制删除按钮的显示与否
				{
					this.Label1.Text="没有该类问题";
					this.btnDelete.Visible=false;
				}
				else
					this.btnDelete.Visible=true;
			}
			catch(Exception)
			{
				
			}
		}

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    
			this.btnDelete.Click += new System.EventHandler(this.btnDelete_Click);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion

		private void btnDelete_Click(object sender, System.EventArgs e)
		{
			//删除选中问题
			try
			{
				string idList=Request.Form["chkDelete"].ToString();
				if(idList.Trim()!="")
				{
					string sql="delete from [questions] where [id] in("+idList+")";
					string delAbout="delete from [questionAbout] where questionID in("+idList+")";
					if(idList.Trim()!="")
					{
						cd.updateDatabase(sql);//删除问题
						cd.updateDatabase(delAbout);//删除问题相关讨论
					}

					string type="all";//显示类型,全部或者是已经回答或没回答的
					int page=1;//分页显示的当前页

					type=Request.QueryString["type"].ToString();
					page=Convert.ToInt32(Request.QueryString["page"].ToString());
					this.Label1.Text=this.showQuestionsList(type,"","",20,page);
				}
				if(this.Label1.Text=="")
				{
					this.btnDelete.Visible=false;
				}
			}
			catch(Exception)
			{
				this.Label1.Text=this.showQuestionsList("all","","",20,1);
				//Response.Redirect("err.aspx?err="+ee.Message);
			}
		}


	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -