本来已经进入“正式开发”的教程部分了,但这次还是要先插入一些“旁门左道”,因为很多时候,我们仅仅只是要演示一个产品概念或者完成一次老师布置的课程设计,那就没必要仔仔细细地敲打每一行代码。像我这学期选修了“高级网页”课程,期末大家都在着急做不出来,我花了两个小时,就做了一个包含“一、两千行”代码的网站项目出来,顺利过关。
“旁门左道”虽好,但并不适合新手,只有发现自己只是在重复着熟悉的操作时,才有能力控制“旁门左道”。
这次介绍的工具有:网站扒皮者(前端)、动软代码生成器(后端)以及将两者结合起来的方法。
一:网站扒皮者
使用很简单,输入要“扒”的网址,这个软件就会自动下载相关文件(包括Html、CSS、JS和图片等那个网页需要用到的文件,文件相对路径也会对应存放好),分秒间就可以搞出一个可以出手的页面,删除一些不要的代码,比如原来的内容部分就不要了,剩下一个<Div id="content">放在那里,存放我们要显示的内容即可。
二:动软代码生成器
这是为.Net设计的代码生成器,它可以生产“三层架构”、“工厂模式”的项目。首先你要先设计好数据库(我用的是MSSQL2008,它支持多种数据库),然后打开软件,新增数据库服务器--连接--新建.Net项目(“简单三层”生成的版本是VS2005的,“简单三层(管理)”适用版本可以选择VS2008或者VS2010,我生成的是后者),完成之后,就会得到一个完整的Asp.net项目。
主要时候两处代码。
1.BLL层,每张数据库表都会对应生成一个操作类。里面包含的“增删查改”这些常规功能,比如
2.UI层,封装了一些简单的页面。每张数据库表都有对应的一个文件夹,里面有对应的“增删查改”的页面,做一些简单修改也可以弄出挺多功能和效果的。
三:整合
使用“内置”的模板,能实现的功能和效果比较有限,有了步骤一生产出来的漂亮页面,我们还要在步骤二的BLL层写多一些功能,这个功能可以根据数据库里的数据和你的要求来灵活生产Html代码。下面我结合一个有较多功能的表格JS来做一个页面(叫做dataTables ,先在它的官网http://www.datatables.net/下载Demo文件,了解它的使用规则)。
首先Html代码规则是这样的:
<head runat="server">
<title></title>
<link href="DataTable/demo_page.css" rel="stylesheet" type="text/css" />
<link href="DataTable/demo_table.css" rel="stylesheet" type="text/css" />
<script src="Scripts/jquery.js" type="text/javascript"></script>
<script src="DataTable/jquery.dataTables.js" type="text/javascript"></script>
<script type="text/javascript" charset="utf-8">
$(document).ready(function () {
$('#example').dataTable();
});
</script>
</head>
<body id="dt_example">
<form id="form1" runat="server">
<div id="container">
<div id="demo" runat="server" style="text-align:center;">
</div>
<div class="spacer">
</div>
</form>
</body>
接下来当页面加载时,就在<div id="demo">插入要显示的内容的Html代码:
protected void Page_Load(object sender, EventArgs e)
{
Maticsoft.BLL.Call bll = new Maticsoft.BLL.Call();
string html = bll.GetTableHtmlByListAll();
demo.InnerHtml = html;
}
我们来看看这段html代码是怎样生成出来的(要自己写代码)
#region ExtensionMethod
/// <summary>
/// 获取所有列表的HTML代码
/// </summary>
/// <returns></returns>
public string GetTableHtmlByListAll()
{
DataTable table = dal.GetList("").Tables[0];
string[] tables = new string[table.Rows.Count];
StringBuilder sb = new StringBuilder();
sb.Append("<table cellpadding='0' cellspacing='0' border='1' class='display' id='example' width='100%'>");
//表头,第一行,列名
sb.Append("<thead><tr>");
sb.Append("<th>编号</th><th>主叫方号码</th><th>主叫方网络</th><th>接听方号码</th><th>接听方网络</th><th>响铃开始时间</th><th>通话时间</th><th>备注</th><th>是否为Bug</th>");
sb.Append("</tr></thead>");
//-----------------
List<Model.Call> list = DataTableToList(table);
sb.Append("<tbody>");
foreach (Model.Call m in list)
{
sb.Append("<tr class='odd gradeC'>");
sb.Append("<td>"+m.Id+"</td>").Append("<td>"+m.CallingPartyNum+"</td>").Append("<td>"+m.CallingPartyNet+"</td>").Append("<td>"+m.CalledPartyNum+"</td>").Append("<td>"+m.CalledPartyNet+"</td>")
.Append("<td>" + m.BeginTime + "</td>").Append("<td>" + m.Time + "</td>").Append("<td>" + m.Remark + "</td>").Append("<td>" + turnBoolToChinese(m.IsBug) + "</td>");
sb.Append("</tr>");
}
sb.Append("</tbody><tfoot><tr>");
sb.Append("<th>编号</th><th>主叫方号码</th><th>主叫方网络</th><th>接听方号码</th><th>接听方网络</th><th>响铃开始时间</th><th>通话时间</th><th>备注</th><th>是否为Bug</th>");
;
sb.Append("</tr></tfoot></table>");
return sb.ToString();
}
private string turnBoolToChinese(bool b)
{
if (b)
return "是";
return "否";
}
#endregion ExtensionMethod
对,就是拼接字符串,最后把完成的html代码发给前台,渲染之后的效果:
这个表格拥有“分页、排序、查找”等功能,需要的话还可以显眼地标记“异常”的数据,非常强大,Demo文件还有很多特殊场景的功能,但我就没去测试了,这些东西都是需要再翻的。
简单吧哈哈。可怜我就惨了,这些天回来家里,没拉网线,一大早抱着电脑去别人家上网写教程,回来了想继续写点后发表,只能解决手机发送wlan来上网,没想到一编辑文章,之前上传的图片全不见了(网速太慢,没加载到图片,然后csdn又自动帮我保存了还是,反正我图片又得重新打开程序截图,然后龟速上传)。呜呼,觉得有用的朋友顶一下呗。
分享到:
相关推荐
详细阐述了快速开发工具的选择和使用Microsoft Visual Studio 2005快速开发工具进行项目管理的过程和方法,提出开发工作过程中的不足之处和改进措施。最后对软件开发工具的演变趋势以及如何适应演变做了简要说明。可...
代码生成器,有视频演示,最好用VS2010
安卓项目快速开发框架 终结目标:不重复造轮子,基于此框架可以快速开发出一款APP 功能在慢慢完善中。。 特性 1、当前主流框架 MVP Retrofit RxJava。 2、Activity和Fragment结合MVP模式的完整封装,大大减少代码量...
自制快速开发工具。生成页面、控制类、实体、此工具是本人为海关开发某个项目所用、内附源码,如果你的页面不一样可以修改源码、简单易用、适合开发者使用,大大提高开发效率
本文讲述,如何快速使用leangoo敏捷开发工具进行项目协作,项目管理
VisionPro联合C#高级开发,常用功能封装成控件,快速开发。
ApiCat 是一款基于 AI 技术的 API 开发工具,它旨在通过自动化和智能化的方式,帮助开发人员更快速、更高效地开发 API。ApiCat 支持 OpenAPI 和 Swagger 的数据文件导入和导出,并可以对用户输入的 API 需求进行分析...
基于beego的菜鸟级快速开发框架工具集。实现了:数据库设计在代码中完成和维护;api自动生成;数据读取通过配置文件方式以保证上线后维护的简便性;以事件为驱动的权限阻断系统、数据预处理后处理,最大程度上保证...
毕设&课设&项目&实训-基于laravel+layui的PHP快速开发工具;可生成各类数据表格CURD及基于表格数据的操作、统计图表 【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、...
FPGA嵌入式项目开发实战(8,20章)与光盘代码 FPGA嵌入式项目开发实战 从实用的角度出发,通过大量工程实例,详细介绍了FPGA项目程序设计的方法与技巧。全书共分为4篇25章,第1篇为FPGA基础知识篇,简要介绍了FPGA...
根据数据库中的表结构,生成asp.net的项目源码,会自动生成权限管理的代码、数据库表、操作页面,项目生成多种架构。
Android快速开发的11个辅助工具,复制粘贴到你的项目里,添加上包名就可以直接使用,能提高开发速度
开发工具在软件开发生命周期中扮演着至关重要的角色,它们旨在简化和加速从概念设计到产品部署的各个环节。以下是开发工具的主要作用: 代码编写与编辑: 提供集成开发环境(IDE),如Visual Studio、Eclipse、...
应用管理:任务调度、邮件管理、图片管理、文章管理,每个模块只需要你稍作修改就可以打造成一个项目了。 系统管理:敏捷开发、系统菜单、全局配置,小伙伴们只需要设计好表结构,三秒中就能撸出一个增删查改的模块...
毕设&课设&项目&实训-基于 Spring Boot 和 JavaScript 的轻量级快速开发 WebSocket 协议通讯的工具包。 【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、...
这是我自己整理出来的一些在项目中常用的开发工具类,一些常用的控件都封装好了的,可以直接使用。
①基于最新.net 6 winform(C#语言,需要使用VS2022编译)...⑤本项目可以作为快速开发框架模板,只需简单修改就可以开发出自己的桌面软件工具。 ⑥截图地址https://blog.csdn.net/pksniq/article/details/123129071
Java SSM项目是一种使用Java语言和SSM框架(Spring + Spring MVC + MyBatis)开发的Web应用程序。SSM是一种常用的Java开发框架组合,它结合了Spring框架、Spring MVC框架和MyBatis框架的优点,能够快速构建可靠、...
开发工具在软件开发生命周期中扮演着至关重要的角色,它们旨在简化和加速从概念设计到产品部署的各个环节。以下是开发工具的主要作用: 代码编写与编辑: 提供集成开发环境(IDE),如Visual Studio、Eclipse、...
3.4.5承担本项目主要技术人员和售后服务人员表 20 3.4.6最近两年主要开发实施同类型企业相同或类似系统的开发案例 21 3.4.6.1案例合同首尾页 21 3.4.6.2 系统开发主界面截图 22 4 项目解决方案 26 4.1 项目解决...