asp.net

位置:IT落伍者 >> asp.net >> 浏览文章

ASP.NET项目开发指南:添加文章(2)


发布日期:2023年09月19日
 
ASP.NET项目开发指南:添加文章(2)

添加文章(

后台事件处理

编写后台事件处理页面ST_ writeaspxcs主要代码如程序所示

程序 ST_ writeaspxcs

protected void Page_Load(object sender SystemEventArgs e)

{

//在此处放置用户代码以初始化页面

ST_GROUPBlogST_main ST_login = new ST_GROUPBlogST_main()

//登录连接

ST_logincheck_Login()

//获得数据库连接字符串

string ST_dns = ConfigurationSettingsAppSettings[conn];

ST_myConn = new OleDbConnection(ST_dns)

//绑定GridView

PageDataBind()

}

【代码说明】上述代码主要实现了文章类型选择添加文章和重写文章的功能代码第行表示获取WebConfig中AppSettings标签下名为conn的值具体使用AppSettings还是ConnectionStrings来保存数据库连接字符串并不重要读取方式区别也不大代码第行表示重新绑定页面

类别下拉列表框的实现

类别下拉列表框是通过ST_getList()方法实现的其主要代码如程序所示

程序 ST_ writeaspxcs

public void ST_getList()

{

//获取选择的类型

ResponseWrite (<select name=listtype>

//创建选中类型指定的SQL语句

OleDbCommand ST_myCmd = new OleDbCommand(select * from

ST_classST_myConn)

ST_myConnOpen()

//通过调用ExecuteReader()从数据库中检索行创建OleDbCommand实例

OleDbDataReader ST_read = ST_myCmdExecuteReader()

//判断是否有数据

while (ST_readRead())

{

ResponseWrite (<option value=+ST_read[]ToString()

+>+ST_read[]ToString()+</option>

}

ResponseWrite (</select>

ST_myConnClose()

}

【代码说明】前台页面中有一个<%ST_getList()%>表示直接从后台调用该方法并返回方法生成的内容代码第~行就是通过ResponseWrite()方法输出一个select下拉列表框标签

文章的添加和重写

文章的添加和重写是通过表单中的submit和reset按钮来实现的当单击添加按钮时action=ST_saveaspx通过ST_saveaspxcs中的ST_Save_Add()方法实现文章的添加其主要代码如程序所示

程序 ST_ writeaspxcs

public void ST_Save_Add()

{

//获取新文章的信息

string ST_n_title = HtmlEncode(RequestForm[n_title])

string ST_n_author = HtmlEncode(RequestForm[n_author])

string ST_n_key = HtmlEncode(RequestForm[n_key])

string ST_n_content = RequestForm

[n_content]Replace(

int ST_cmd;

//判断表单是否有信息

if (RequestForm[n_iscmd]!=null)

{

ST_cmd=;

}

else

{

ST_cmd=;

}

//创建插入新文章信息的SQL语句

string ST_sql = insert into ST_news (ST_n_authorST_n_title

ST_n_keyST_n_contentST_c_idST_n_iscmd) values (+ ST_n_author

++ ST_n_title ++ ST_n_key ++ ST_n_content

++RequestForm[listtype]++ ST_cmd +;

//创建OleDbCommand

OleDbCommand ST_myCmd = new OleDbCommand(ST_sqlST_myConn)

ST_myConnOpen()

//执行插入新文章的SQL语句

ST_myCmdExecuteNonQuery()

ST_myConnClose()

//定向到ST_mainaspx页面

ResponseRedirect(ST_mainaspx

}

【代码说明】代码第~行都使用了HtmlEncode()方法其作用是对指定的字符串应用HTML编码同时防止一些非法字符串注入代码第行调用了Replace()方法这是字符串类的一个特有方法就是将参数指定的字符全部替换为参数指定的字符这也是防止HTML注入的一种方式代码第~行创建插入语句然后执行插入命令并最终实现页面的导航

说明OleDbCommand也具备ExecuteNonQuery()方法不返回数据

返回目录ASPNET项目开发指南

编辑推荐

ASPNET MVC 框架揭秘

ASPNET开发宝典

ASP NET开发培训视频教程

               

上一篇:ASP.NET项目开发指南:添加文章(1)

下一篇:ASP.NET项目开发指南:评论的删除(1)