当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 从一个舆论调查的制作谈面向对象的编程思路(五)

ASP.NET
asp.net SqlParameter关于Like的传参数无效问题
数据库 数据类型float到C#类型decimal, float数据类型转化无效
google suggest 下拉菜单实现代码(asp.net版本)
asp.net(C#) 动态添加非ASP的标准html控件(如添加Script标签)
asp.net GridView导出到Excel代码
asp.net 开发的一些常用技巧
php 三级联动菜单
ASp.net 文本框(TextBox)计算,判断输入的是否是数字
asp.net 存储过程调用
asp.net 操作XML 按指定格式写入XML数据 WriteXml
asp.net连接数据库 增加,修改,删除,查询代码
VB.net 查询获取数据库数据信息
asp.net 删除,更新数据库方法
.net获取硬件信息_CPU序列号
ASP.NET 页面中动态增加的控件、添加事件
彻底解决ASP.NET MD5加密中文结果和ASP不一致的问题
asp.net结合aspnetpager使用SQL2005的存储过程分页
asp.net 用户控件读取以及赋值
asp.net 弹出警告窗口实现代码
asp.net 枚举文件里面的数字绑定到DropDownList里面去

ASP.NET 中的 从一个舆论调查的制作谈面向对象的编程思路(五)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 167 ::
收藏到网摘: n/a

好了,现在万事俱备,只欠东风了,让我们看看现在做一个舆论调查多么简单:

file : vote.aspx


<%@ Page language="c#" Codebehind="vote.cs" AutoEventWireup="false" Inherits="Football.vote" %>

<html>
<head>
<title>532.com.cn --- 舆论调查 ---</title>
<link rel="stylesheet" href="style/style.css" type="text/css">

</head>
<body>

<form method="post" runat="server">
<table width=400 height=300 align=center>
<tr>
<td class=cn valign=top align=center><b>调查题目:
<asp:label id="lblSurveyTitle" runat=Server class=cn></asp:label>
</td>
</tr>
<tr>
<td alin=center>
<asp:image id="imgSurvey" runat=Server></asp:image>
</td>
</tr>
<tr>
<td align=center>
<input type=button onclick="window.close();" value="关闭此窗口">
</td>
</tr>
</table>
</form>

</body>
</html>

file: vote.cs
namespace Football
{
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;

/// <summary>
/// Summary description for vote.
/// </summary>
public class vote : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Image imgSurvey;
protected System.Web.UI.WebControls.Label lblSurveyTitle;

private string m_strSurveyID ;
private int m_intVoteID ;
public vote()
{
Page.Init += new System.EventHandler(Page_Init);
}

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//
// Evals true first time browser hits the page
//
}
}

protected void Page_Init(object sender, EventArgs e)
{
//
// CODEGEN: This call is required by the ASP+ Windows Form Designer.
//
InitializeComponent();
Init() ;
}

/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler (this.Page_Load);
}

private void Init()
{
m_strSurveyID = Request["surveyid"].ToString() ;
FootballSurvey mySurvey = new FootballSurvey() ;

try
{
m_intVoteID = Request["vote"].ToInt32() ;
mySurvey.LoadFromDatabase(m_strSurveyID) ;
lblSurveyTitle.Text = mySurvey.Title ;
if (m_intVoteID < mySurvey.Items.Count)
{
mySurvey.Vote(m_intVoteID) ;
}

mySurvey.CreateResultImage(Server.MapPath("survey.jpg") ,
MyClass.Util.MyChart.ChartType.Pie ,
300 ,300 , Color.White) ;
imgSurvey.ImageUrl = "survey.jpg" ;
}
catch(Exception e)
{
#if DEBUG
Response.Write ("初始化页面错误:" + e.ToString()) ;
return ;
#endif
Page.Navigate("error.aspx") ;
}

}
}
}

要看这个调查的效果,请到http://210.12.102.95/football 。怎么样,是不是觉得这种编程思路不错呢?什么?还不如直接在aspx文件里面做?不错,如果单做这么一个调查的确直接做要省事的多,但你知不知道,只要有编译好的这个类的dll,不管你怎么改页面,改数据结构,你都可以在15分钟内把你所需要的舆论调查做出来?这就是这两种编程方法最大的区别。希望通过这个例子你能学到一些编程思想把。