新闻管理系统文档格式.docx
- 文档编号:6501232
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:17
- 大小:180.81KB
新闻管理系统文档格式.docx
《新闻管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《新闻管理系统文档格式.docx(17页珍藏版)》请在冰点文库上搜索。
用户管理:
密码修改、用户添加、修改、删除、查询
新闻管理:
新闻的浏览、查询、添加、排序、分页、修改、删除
1.3文件结构
Web.Config文件
Configuration节中填写如下内容:
<
configuration>
<
!
--<
appSettings/>
-->
appSettings>
<
addkey="
ConnString"
value="
server=.;
database=xwgl;
uid=sa;
pwd=123"
/>
/appSettings>
/configuration>
1.4系统实现
1.4.1新闻类别管理
分页、修改、删除,分页、排序
1.页面布局
插入6行3列的表格,使表格整个居中。
显示居中按钮:
视图工具栏格式设置
|前3行是添加类别
|第4行空白
|第5行中间格放一个GridView
|第6行中间放一个按钮
控件类型
控件名
备注
TextBox
txt_CatigoryID
txt_CatigoryName
Button
btn_Add
与验证控件编组
GridView
GridView1
btn_Delete
RequiredFieldValidator
RequiredFieldValidator1
验证ID
RequiredFieldValidator2
验证Name
GridView设置
列类型
CommandField删除列
CommandField编辑、更新、取消
TemplateField
列中放“复选框”
BoundField
ID
只读
Name
编辑时显示“文本框”
“编号”设置为只读
类别名称为模版列
2.代码实现
需要处理的事件:
Page_Load
②btn_Add_Click
③btn_Delete_Click
④GridView1_RowCancelingEdit
⑤GridView1_RowEditing
⑥GridView1_RowUpdating
⑦GridView1_RowDeleting
3.问题与解决方案
弹出常见对话框
XX:
删除确认
GridView删除确认
删除确认:
divid='
de'
onclick='
returnconfirm("
确定要删除吗?
"
)'
>
删除<
/div>
按钮删除确认:
btn_Delete.Attributes.Add("
OnClick"
"
returnconfirm('
'
)"
);
问题:
点击“更新”按钮时,验证控件不允许为空。
解决方案:
验证控件的ValidationGroup属性
多选删除时连续的项目会少删。
逆序删除(从后往前删除)
1.4.2新闻添加
插入5行3列的表格,使表格整个居中。
txt_Title
txt_Content
文本框的多行模式
txt_PostTime
DropDownList
ddl_Catigory
btn_Post
如何设置文本框的多行模式?
②RadioButton1_CheckedChanged
③RadioButton2_CheckedChanged
④btn_Post_Click
Page_Load:
主要任务:
绑定类别下拉列表框
提示:
|首先获取数据表
|然后对三个属性进行设置:
|DataSource、DataTextField、DataValueField
|最后调用DataBind()方法
btn_Post_Click
|先构造insert语句(需要测试insert语句的正确性)
|然后执行之
RadioButton1_CheckedChanged
|清空txt_PostTime
RadioButton2_CheckedChanged
|txt_PostTime显示当前日期
两个函数:
DropDownListDataBind(DropDownListddl,stringsql_select,stringtextfield,stringvaluefield)
DataAction(stringsql_nonselect)
publicvoidDropDownListDataBind(DropDownListddl,stringsql_select,stringtextfield,stringvaluefield)
{
stringconnstring=System.Configuration.ConfigurationManager.AppSettings["
].ToString();
//stringconnstring="
;
SqlConnectionsconn=newSqlConnection(connstring);
sconn.Open();
SqlDataAdaptersda=newSqlDataAdapter(sql_select,sconn);
DataSetds=newDataSet();
sda.Fill(ds,"
table"
ddl.DataSource=ds.Tables[0];
ddl.DataTextField=textfield;
ddl.DataValueField=valuefield;
ddl.DataBind();
sconn.Close();
}
publicvoidDataAction(stringsql_nonselect)
SqlCommandsc=newSqlCommand(sql_nonselect,sconn);
sc.ExecuteNonQuery();
}
遇到的问题:
手工输入和获取当前时间的事件代码写了,但是没反应。
设置控件的AutoPostBack属性为true
1.4.3新闻浏览
新闻浏览由两个页面组成(NewsBrowse.aspx和NewsBrowse_detail.aspx),其中NewsBrowse显示全部新闻(只显示标题和类别),而通过点击某个新闻标题后可以链接到该新闻的内容页面NewsBrowse_detail.aspx。
新闻浏览、分页
技术核心
超链接列
参数传递
1.4.3.1NewsBrowse.aspx
1.NewsBrowse.aspx页面布局
放一个GridView,居中显示。
GridView1的智能标记编辑列放一个绑定咧、超链接列、绑定列。
DataField
HeaderText
Id
新闻编号
HyperLinkField
标题
DataNavigateUrlFields:
id
DataNavigateUrlFormatString:
~/NewsBrowse_detail.aspx?
id={0}
DataTextField:
Title
CatigoryName
类别
②GridView1_PageIndexChanging
Ø
Page_Load
从NewsInfor,CatigoriesInfor两个表中提取数据填充到GridView中
用到的函数
DataSetGetDataSet(stringsql_select)
voidGridView1DataBind()
GridView1_PageIndexChanging
AllowPaging设置为true
PageSize设置为2
两个表中都有id字段,参数传递时可能id值不对。
需要注意表的顺序NewsInfor在前
1.4.3.2NewsBrowse_detail.aspx
插入4行2列的表格,使表格整个居中。
|第1行是新闻标题
|第2行新闻类别
|第3行新闻内容
|第4行提交时间
此处与添加不同
接收新闻id参数,然后根据id获取新闻内容,再显示到页面上。
日期中含有时间。
用DateTime类型处理
1.5调程序心得
1.把程序分割为若干段,每段进行一个检验。
检验的方法:
输出变量的内容(此变量在上一阶段和下一阶段同时用到)
用常量作为参数(函数的调用时)
在查询分析器或者企业管理器中检测(SQL语句)
2.程序编写过程中一定要依靠VS的提示,如果输入对象后点点不提示方法,则需要查看其它处是否有错误。
3.注意类型转换
4.C#语言的数组下标、集合定位都是从0开始。
DataSet与DataTable元素的访问
•★★★DataSet(Table的集合)
O可以用序号或者名字访问Tables集合中的元素
(ds.Tables[0]或者ds.Tables[“student”])
Table[1](Table是Row的集合,也是Column的集合)
Row[i]、Column[j]或Column[列名]
ColumnName(Tables[0].Columns[1].ColumnName)
TableName
Table[2]
…
Table[N]
•★★★★★第i行第j列的元素访问形式:
OTable[1].Rows[i][j]或Table[1].Rows[i][列名]
ds.Tables["
news"
].Rows[0][2].ToString()
ds.Tables[1].Rows[0]["
id"
].ToString()
•Table本质上可以认为是二维数组
•★★★★获取行数和列数
ds.Tables[0].Rows.Count;
ds.Tables[0].Columns.Count;
举例:
显示ds中Tables[0]中的全部数据
for(inti=0;
i<
ds.Tables[0].Rows.Count;
i++)
{
for(j=0;
j<
ds.Tables[0].Columns.Count;
j++)
{
Response.Write(ds.Tables[0].Rows[i][j].ToString());
Response.Write(“”);
Response.Write(“<
br>
”);
GridView元素的访问
GridView也是行和列的集合。
GridView1.Rows.Count;
GridView1.Columns.Count;
GridView的只能使用列号访问
GridView1.Rows[i].Cells[j].Text
for(inti=GridView1.Rows.Count-1;
i>
=0;
i--)
CheckBoxck1=newCheckBox();
ck1=(CheckBox)GridView1.Rows[i].Cells[2].FindControl("
CheckBox1"
if(ck1.Checked)
id=GridView1.Rows[i].Cells[3].Text;
Response.Write(id);
stringsql_delete="
+id+"
DataAction(sql_delete);
GridView1_RowCommand如何获取行号
第一项:
gridview模板列事件中如何获得行号-技术天地-博客频道-CSDN...
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 新闻 管理 系统