【自用建设中小型网站工具】快速生成后台
2013-03-07 00:56
453 查看
前言:此”快速生成后台“为本人参考discuz开源代码效果组装而成。无高深技术,只讲究快速生成,适合建设中小型网站。运用得当可以批量生产网站后台。
以一个新闻系统为例子,写出详细建设过程,分享一下,以备后用。涉及工具有:VS2010、PowerDesigner、SQL Server 2008、DBBuildCode、ultraedit。
一、设计页面
1、打开VS2010,新建一个空网站,保存至News文件夹。
![](http://images.cnitblog.com/blog/202865/201303/07001842-87604ad934684d27bfb356b8f615ab9b.jpg)
2、添加新项:NewsList.aspx、NewsEdit.aspx2个Web窗体,新建文件夹:Style(main.css、general.css),新建文件夹:Images(界面所需图片)。
![](http://images.cnitblog.com/blog/202865/201303/07001907-04c96bc9a6f841728f8a8564c9a2e571.jpg)
3、设计NewsList.aspx(新闻列表)、NewsEdit.aspx(新闻编辑)页面。
![](http://images.cnitblog.com/blog/202865/201303/07001925-c032bb19e8fe4f06a85e9c87d45e408c.jpg)
![](http://images.cnitblog.com/blog/202865/201303/07001947-5a057c97a85c4806accd34b24908b4fc.jpg)
二、设计数据库
1、打开PowerDesigner ,建表News。
![](http://images.cnitblog.com/blog/202865/201303/07002041-76e1314001b54d62b58c0fb2aed5463f.jpg)
2、打开SQL Server 2008,新建数据库News,新建表:News(从PowerDesigner中取建表语句)。
![](http://images.cnitblog.com/blog/202865/201303/07002304-29bcdaf4f18e43e8a4fe8c4ba2f3ad8d.jpg)
三、自动生成数据库代码
1、新建App_Code,加个三个文件夹(DataBase、DBEntity、DBInterface),加入已有的三个文件(CDbBaseSqlServer.cs、CDbHelper、IDbBase.cs)至DataBase。
![](http://images.cnitblog.com/blog/202865/201303/07002458-2cf4a71eca314117916e3d2c451ecb4d.jpg)
2、打开自动生成工具(本人自己用C++写的)。
![](http://images.cnitblog.com/blog/202865/201303/07002514-63426d1b5a5c4bb9958367529ffb4e46.jpg)
3、从PowerDesigner中取出News表的字段信息。
![](http://images.cnitblog.com/blog/202865/201303/07002557-4d53df401c4b492c9cb2436b5e573159.jpg)
4、填入DBBuildCode工具,点击“生成”按钮,在工具目录生成2个文件(CNewsInfo.cs、CNews.cs)。注:表结构中内容可以借助于ultraedit来处理。
![](http://images.cnitblog.com/blog/202865/201303/07002616-9e138d914f0c49e598c98c7ecf7b3016.jpg)
5、把生成的2个文件(CNewsInfo.cs、CNews.cs)分别新添加至DBEntity、DBInterface文件夹,发现数据库操作的代码都已经生成。
![](http://images.cnitblog.com/blog/202865/201303/07002635-47c230b736b347baa7c6d0c54525c8dd.jpg)
6、设置Web.config中数据库连接串等信息。
四、实现前台C#操作代码。
在NewsList.aspx.cs、NewsEdit.aspx.cs实现对应的控件响应操作代码。
关键代码如下:
五、运行NewsList.aspx效果图。
有显示、查询、添加、修改、删除、分页功能。
![](http://images.cnitblog.com/blog/202865/201303/07002652-1cbf1f20483643fbbda84a38a33e30e5.jpg)
PS:原型是这样,可以根据各种网站的风格去定制效果。源码。
以一个新闻系统为例子,写出详细建设过程,分享一下,以备后用。涉及工具有:VS2010、PowerDesigner、SQL Server 2008、DBBuildCode、ultraedit。
一、设计页面
1、打开VS2010,新建一个空网站,保存至News文件夹。
![](http://images.cnitblog.com/blog/202865/201303/07001842-87604ad934684d27bfb356b8f615ab9b.jpg)
2、添加新项:NewsList.aspx、NewsEdit.aspx2个Web窗体,新建文件夹:Style(main.css、general.css),新建文件夹:Images(界面所需图片)。
![](http://images.cnitblog.com/blog/202865/201303/07001907-04c96bc9a6f841728f8a8564c9a2e571.jpg)
3、设计NewsList.aspx(新闻列表)、NewsEdit.aspx(新闻编辑)页面。
![](http://images.cnitblog.com/blog/202865/201303/07001925-c032bb19e8fe4f06a85e9c87d45e408c.jpg)
![](http://images.cnitblog.com/blog/202865/201303/07001947-5a057c97a85c4806accd34b24908b4fc.jpg)
二、设计数据库
1、打开PowerDesigner ,建表News。
![](http://images.cnitblog.com/blog/202865/201303/07002041-76e1314001b54d62b58c0fb2aed5463f.jpg)
2、打开SQL Server 2008,新建数据库News,新建表:News(从PowerDesigner中取建表语句)。
![](http://images.cnitblog.com/blog/202865/201303/07002304-29bcdaf4f18e43e8a4fe8c4ba2f3ad8d.jpg)
三、自动生成数据库代码
1、新建App_Code,加个三个文件夹(DataBase、DBEntity、DBInterface),加入已有的三个文件(CDbBaseSqlServer.cs、CDbHelper、IDbBase.cs)至DataBase。
![](http://images.cnitblog.com/blog/202865/201303/07002458-2cf4a71eca314117916e3d2c451ecb4d.jpg)
2、打开自动生成工具(本人自己用C++写的)。
![](http://images.cnitblog.com/blog/202865/201303/07002514-63426d1b5a5c4bb9958367529ffb4e46.jpg)
3、从PowerDesigner中取出News表的字段信息。
![](http://images.cnitblog.com/blog/202865/201303/07002557-4d53df401c4b492c9cb2436b5e573159.jpg)
4、填入DBBuildCode工具,点击“生成”按钮,在工具目录生成2个文件(CNewsInfo.cs、CNews.cs)。注:表结构中内容可以借助于ultraedit来处理。
![](http://images.cnitblog.com/blog/202865/201303/07002616-9e138d914f0c49e598c98c7ecf7b3016.jpg)
5、把生成的2个文件(CNewsInfo.cs、CNews.cs)分别新添加至DBEntity、DBInterface文件夹,发现数据库操作的代码都已经生成。
![](http://images.cnitblog.com/blog/202865/201303/07002635-47c230b736b347baa7c6d0c54525c8dd.jpg)
6、设置Web.config中数据库连接串等信息。
<?xml version="1.0"?> <!-- 有关如何配置 ASP.NET 应用程序的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <system.web> <compilation debug="true" targetFramework="4.0"/> </system.web> <appSettings> <add key="DatabasePre" value=""/> <add key="mssql" value="1"/> </appSettings> <connectionStrings> <add name="Conn" connectionString="server=local;database=news;User Id=sa;pwd=sa;"/> </connectionStrings> </configuration>
四、实现前台C#操作代码。
在NewsList.aspx.cs、NewsEdit.aspx.cs实现对应的控件响应操作代码。
关键代码如下:
private void InitDataGrid() { DataTable dt = new DataTable(); if (this.txtSearch.Text != "") { dt = oNews.GetInfoForSearch(this.txtSearch.Text.Trim()); } else dt = oNews.GetInfo(); for (int i = 0; i < dt.Rows.Count; i++) { string sFlagRecomTemp = ""; //推荐标记 string sFlagRecom = dt.Rows[i]["FlagRecom"].ToString(); { if (sFlagRecom == "0") { sFlagRecomTemp = "否"; } if (sFlagRecom == "1") { sFlagRecomTemp = "是"; } } dt.Rows[i]["FlagRecom"] = sFlagRecomTemp; } int cup = Convert.ToInt32(this.lbCurrentPage.Text); PagedDataSource ps = new PagedDataSource(); ps.DataSource = dt.DefaultView; ps.AllowPaging = true; ps.PageSize = 24; ps.CurrentPageIndex = cup - 1; this.lbPage.Text = ps.PageCount.ToString(); this.ddlPage.Items.Clear(); for (int i = 1; i < ps.PageCount + 1; i++) { ListItem li = new ListItem(i.ToString(), i.ToString()); this.ddlPage.Items.Add(i.ToString()); } this.LinkUp.Enabled = true; this.LinkDown.Enabled = true; this.ddlPage.SelectedValue = cup.ToString(); if (Convert.ToInt16(this.lbCurrentPage.Text) < 2) { this.LinkFirst.Enabled = false; this.LinkUp.Enabled = false; } else { this.LinkFirst.Enabled = true; this.LinkUp.Enabled = true; } if (Convert.ToInt16(this.lbCurrentPage.Text) >= Convert.ToInt16(this.lbPage.Text)) { this.LinkDown.Enabled = false; this.LinkLast.Enabled = false; } else { this.LinkDown.Enabled = true; this.LinkLast.Enabled = true; } this.dgList.DataSource = ps; this.dgList.DataBind(); if (dt.Rows.Count < 1) { this.currentPage.Style.Add("display", "none"); this.currentPageError.Style.Add("display", ""); } else { this.currentPage.Style.Add("display", ""); this.currentPageError.Style.Add("display", "none"); } }
private void InitNewsEdit() { int iId = 0; string sEdit = ""; if (Request.Params["edit"] != null) { sEdit = Request.Params["edit"].ToString().ToLower(); ViewState["flagedit"] = sEdit; } if (Request.Params["id"] != null) { iId = Convert.ToInt32(Request.Params["id"].ToString()); ViewState["id"] = iId; } switch (sEdit) { case "add": { this.lbTitle.Text = "添加新闻"; sFlagMsg = "fail"; } break; case "edit": { this.lbTitle.Text = "修改新闻"; sFlagMsg = "ok"; CNewsInfo oNewsInfo = new CNewsInfo(); oNewsInfo = oNews.GetInfo(iId); int iSid = 0; iSid = oNewsInfo.Nid; this.txtTitle.Text = oNewsInfo.Title; this.txtCreator.Text = oNewsInfo.Creator; this.ddlFlagRecom.SelectedValue = oNewsInfo.FlagRecom; this.txtContent.Text = oNewsInfo.Content; } break; default: break; } } protected void btnSubmit_Click(object sender, EventArgs e) { int iId = 0; iId = CTypeConverter.StrToInt(ViewState["id"].ToString()); string sTitle = ""; string sCreator = ""; string sContent = ""; int iHits = 0; string sFlagRecom = ""; sTitle = this.txtTitle.Text.Trim(); sCreator = this.txtCreator.Text.Trim(); sContent = this.txtContent.Text.Trim(); sFlagRecom = this.ddlFlagRecom.SelectedValue; string sFlagEdit = ViewState["flagedit"].ToString(); switch (sFlagEdit) { case "add": { CNewsInfo oNewsInfo = new CNewsInfo(); oNewsInfo.Title = sTitle; oNewsInfo.Creator = sCreator; oNewsInfo.Content = sContent; oNewsInfo.Hits = iHits; oNewsInfo.FlagRecom = sFlagRecom; oNews.Insert(oNewsInfo); Response.Redirect("SystemInfo.aspx?msgname=" + Server.UrlEncode("新闻添加成功!") + "&backpage=NewsEdit.aspx?edit=add&backname=" + Server.UrlEncode("继续添加新闻")); } break; case "edit": { CNewsInfo oNewsInfo = new CNewsInfo(); oNewsInfo = oNews.GetInfo(iId); oNewsInfo.Title = sTitle; oNewsInfo.Creator = sCreator; oNewsInfo.Content = sContent; oNewsInfo.FlagRecom = sFlagRecom; oNews.Update(iId, oNewsInfo); Response.Redirect("SystemInfo.aspx?msgname=" + Server.UrlEncode("新闻修改成功!") + "&backpage=NewsList.aspx&backname=" + Server.UrlEncode("返回新闻列表")); } break; default: break; } }
五、运行NewsList.aspx效果图。
有显示、查询、添加、修改、删除、分页功能。
![](http://images.cnitblog.com/blog/202865/201303/07002652-1cbf1f20483643fbbda84a38a33e30e5.jpg)
PS:原型是这样,可以根据各种网站的风格去定制效果。源码。
相关文章推荐
- 【自用建设中小型网站工具】快速生成后台
- 【自用建设中小型网站工具】快速生成后台
- 用rapid-framework开源工具快速生成SSH的网站框架MVC模式
- 用rapid-framework开源工具快速生成SSH的网站框架MVC模式
- 网站制作笔记-bootstrap可视化布局,表单生成工具,快速制作网页原型
- 开始学习ASP快速开发中小型网站
- 对于原创文章生成这类工具,会对网站SEO有不利影响吗? – SEO每天一贴
- 报表工具Stimulsoft Reports快速生成.NET简单列报表
- SEO学习(九)——快速网站诊断(Google网管工具)
- 用Visual Studio 开发工具 如何快速批量生成属性的 get 和set 方法
- 一个通过网站和用户名生成密码的小工具,附源码。
- 快速生成网站
- 网站后台管理中生成首页失败
- WCF开发框架形成之旅---结合代码生成工具实现快速开发
- 微信小程序前端快速生成工具,让机器自动写代码
- unity 快速生成ui代码工具
- 如何使用hbuilder快速生成一个直接打开网站的app
- 像素地图生成工具帮助你快速生成精美地图
- https://www.5ceo.cn/generator/index.htm [5CEO.cn-代码生成工具,在线快速生成java代码,springmvc框架]