开源代码:基于数据集的数据库操作通用类(支持所有数据库且内置分页功能)

liuzewei 2007-04-15 01:18:58
我是这个月才开始接触.NET和数据库的,以前一直用的是C++
所以眼界还比较狭窄,不知道这个类有没有硬伤
比如在概念上就存在严重问题什么的。

呵呵,请大家给点意见和评论,让我学点东西,谢谢。我会来结贴的。^_^


using System;
using System.Data;
using System.Data.Common;
using System.Web.UI.WebControls;

namespace Liuzewei
{
// 类名:基于数据集的数据库操作通用类(支持所有数据库且内置分页功能)
//
// 作者:刘泽围
//
// 版权:在中国软件业不存在版权,可以随意使用 ^_^
//
// 版本:
//
// 2007年4月15日 内置了分页功能、将数据集与源数据之间的数据操作实现改为工厂模式
// 特别致谢 CSDN 论坛会员 sp1234(假装热心灌水实则灌水搞垮论坛)
//
// 2007年4月14日 对 用数据集操作源数据库 时的种种不确定与迷茫迫使我动手写了这么
// 个类并贴到了 CSDN 论坛,谢谢所有回复了帖子与给予我点拨的朋友们
//
// 说明:
//
// 本类将对源数据库的 查询、修改、删除、新增、更新与绑定操作抽象为统一的对数
// 据行引用 的操作
//
// 本类内置分页功能,而且本类是非静态类,所以使用时无须考虑多次不同数据库操作
// ,彼此之间产生的影响
//
// 本类内部采用工厂模式实现,使本类支持 .NET 支持的所有数据库,同时你还可以很
// 简单的针对你常用的数据库类型从本类相应派生出一个新类以方便你的使用
//
// 本类仅仅是对 .NET FCL 的一个简单包装,但在逻辑层次上本人还是经过仔细考虑的
// 比如说将所有操作抽象为统一操作时有考虑过尽量不损失原有的功能、性能与灵活性
// 总之,使用本类简单方便灵活,同时可以减小项目期的复杂度
//
// 示例:
//
// 以Access数据库为例,如果同时要操作多个不同类型的数据库,只要对应实例化即可
//
// 1、实例化对象,必须有主键
// DataBase dataBase( "SELECT [ip], [date], [id] FROM [sitestat]",
// "Provider=Microsoft.JET.OLEDB.4.0; Data Source = C:\SiteStat.mdb",
// "System.Data.OleDb" );
//
// 2、查询数据行,得到结果数据行的引用
// DataRow[] dataRows = dataBase.Select( "id > 10" );
//
// 3、显示数据行,dataRows来自于查询数据行时返回的引用
// for ( int i = 0; i < dataRows.Length; i++ )
// Response.Write( dataRows[i]["ip"].ToString() );
//
// 4、修改数据行并更新到源数据库,dataRows来自于查询数据行时返回的引用
// dataRows[2]["ip"] = "127.0.0.1";
// dataBase.Update();
//
// 5、删除数据行并更新到源数据库,dataRows来自于查询数据行时返回的引用
// for ( int i = 0; i < dataRows.Length; i++ )
// dataRows[i].Delete();
// dataBase.Update();
//
// 6、插入新数据行并更新到源数据库
// DataRow[] newDataRows = dataBase.NewDataRows( 2 );
// newDataRows[0]["ip"] = "127.0.0.2";
// newDataRows[1]["ip"] = "127.0.0.3";
// dataBase.Update();
//
// 7、由其他控件或数据对象进行绑定,这里以 Repeater 进行分页绑定为例
// int totalPage; // 绑定数据集中的第2页,每页10行数据,并返回总页数
// repeater.DataSource = dataBase.DataView( 10, 1, out totalPage );
// repeater.Bind();
//
// 8、针对特定数据库派生新类,这里以 Access 数据库为例
// public class OleDataBase : DataBase {
// public OleDataBase( string queryString, string dataBasePath )
// : base( queryString, "Provider=Microsoft.JET.OLEDB.4.0;
// Data Source = "+dataBasePath, "System.Data.OleDb" ){}}
// 这里仅调用了基类构造函数以简化操作,当然你可以做得更多
// 使用时除了实例化时参数不同以外,其他操作完全同基类对象
// OleDataBase oleDataBase = new OleDataBase( "SE...", "C:\S....mdb );
public class DataBase
{
#region 受保护成员

// 本类实例映射自给定源数据库的公用数据集
protected DataSet dataSet = new DataSet();

// 源数据库与数据集之间的数据适配器
protected DbDataAdapter dataAdapter;
protected DbCommandBuilder commandBuilder;

#endregion


#region 构造函数

// 在托管堆上分配内存实例化类本身以及 DataSet,DataAdapter,CommandBuilder 对象
public DataBase( string commandText, string connectionString,
string providerInvariantName )
{
DbProviderFactory providerFactory =
DbProviderFactories.GetFactory( providerInvariantName );

DbConnection connection = providerFactory.CreateConnection();
connection.ConnectionString = connectionString;

DbCommand command = providerFactory.CreateCommand();
command.CommandText = commandText;
command.Connection = connection;

dataAdapter = providerFactory.CreateDataAdapter();
dataAdapter.SelectCommand = command;

commandBuilder = providerFactory.CreateCommandBuilder();
commandBuilder.QuotePrefix = "[";
commandBuilder.QuoteSuffix = "]";
commandBuilder.DataAdapter = dataAdapter;

dataAdapter.Fill( dataSet );
}

#endregion


#region 公有方法

// 将本类实例公用数据集中数据更新到源数据库中
public void Update()
{
dataAdapter.Update( dataSet );

return;
}

// 从本类实例公用数据集中查询现有数据行
// 调用者可以对返回数据行引用进行显示、修改和删除操作
// 操作完毕调用 Updata() 将操作更新到源数据库中
public DataRow[] Select( string expression )
{
DataRow[] dataRows;
dataRows = dataSet.Tables[0].Select( expression );

return dataRows;
}

// 从本类实例公用数据集中开辟新数据行
// 调用者可以对返回数据行引用进行填充、修改和删除操作
// 操作完毕调用 Updata() 将操作更新到源数据库中
public DataRow[] NewDataRows( int lenth )
{
DataRow[] dataRows = new DataRow[lenth];

for ( int i = 0; i < lenth; i++ )
{
dataRows[i] = dataSet.Tables[0].NewRow();
dataSet.Tables[0].Rows.Add( dataRows[i] );
}

return dataRows;
}

// 返回 DataView 用于调用者绑定本类实例公用数据集进行显示
public DataView DataView()
{
return dataSet.Tables[0].DefaultView;
}

// 返回 DataView 用于调用者绑定本类实例公用数据集的某一分页进行显示
public DataView DataView( int pageSize, int currentPage, out int totalPage )
{
int totalRows = dataSet.Tables[0].Rows.Count;

totalPage = (totalRows / pageSize) + ((totalRows % pageSize == 0) ? 0 : 1);

DataSet pagedDataSet = new DataSet();
dataAdapter.Fill( pagedDataSet, currentPage * pageSize, pageSize, "pagedTable" );

return pagedDataSet.Tables["pagedTable"].DefaultView;
}

#endregion
}
}
...全文
374 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
江城老温 2007-04-19
  • 打赏
  • 举报
回复
不错。顶下。
哈哈007哈 2007-04-17
  • 打赏
  • 举报
回复
lxwin01 2007-04-17
  • 打赏
  • 举报
回复
如果一直停留在怎么做sql语句和怎么具体功能上对自己提高没有什么帮助,如果你的框架换到java上是否适合?如果哪一天,Sql语句的规则变了(当然可能性很低),是否要改动程序?
"扩展,灵活,重用"三大目标,希望能在框架方面多下功能。
http://community.csdn.net/Expert/topic/5461/5461087.xml?temp=.4833795
liuzewei 2007-04-15
  • 打赏
  • 举报
回复
严重BUG:- -!

dataAdapter.Fill( pagedDataSet, currentPage * pageSize, pageSize,
"pagedTable" );

应为----》

dataAdapter.Fill( pagedDataSet, (currentPage-1) * pageSize, pageSize,
"pagedTable" );
Django 2.2.2.dev20190508124537 文档 ========================== Django 文档 你所需要知道的关于 Django 的一切。 获取帮助 遇到问题?我们可以帮你! 试试 FAQ —— 这里有很多常见问题的解答。 正在寻找特定的信息?试试 索引,模块索引 或者 详细内容目录。 在 django-users 邮件列表的档案库搜索,或者 post a question。 在 #django IRC channel 频道提问 在我们的 ticket tracker 报告关于 Django 的 Bug。 这份文档是如何组织的 Django 有丰富的文档。一份高度概述的文档会告诉你在哪里找到特定的东西: 教程 通过手把手地方式教你一步步的创建一个 Web 应用。如果你初学 Django 或编程,请从这里始。也请看看下面的 "快速入门"。 专题指南 在相当高的层次上介绍关键主题和概念,并提供有用的背景信息和解释。 参考指南 包含 API 和 Django 各个工作机制方面的技术参考。它们介绍了 Django 是如何工作,如何被使用的。不过,你得先对关键字的概念有一定理解。 操作指南 是一份目录。它们以排列好的关键问题和用例的方式指导你。它们比教程更加深入,且需要你先了解一些关于 Django 是如何工作的知识。 快速入门 您是刚学 Django 或是初学编程? 这就是你始学习的地方! 从零始: 概要 | 安装 入门教程: 第1节: 请求和响应 | 第2节: 模型和 admin 站点 | 第3节: 视图和模板 | 第4节: 表单和通用视图 | 第5节: 测试 | 第6节: 静态文件 | 第7节: 自定义 admin 站点 进阶教程 : 如何编写可复用的应用 | 提交你的第一个 Django 补丁 模型层 Django 提供了一个抽象的模型 ("models") 层,为了构建和操纵你的Web应用的数据。阅读下面内容了解更多: 模型: 模型介绍 | 字段型 | 索引 | Meta 选项 | Model QuerySet: 执行查询 | QuerySet 方法参考 | 查询表达式 Model 实例: 实例方法 | 访问关联的对象 迁移: 迁移概述 | 操作参考 | SchemaEditor | 编写迁移 高级: 管理员 | 原始 SQL | 事务 | 聚合 | 搜索 | 自定义字段 | 多个数据库 | 自定义查询 | 查询表达式 | 条件表达式 | 数据库函数 其它: 支持数据库 | 旧数据库 | 提供初始化数据 | 优化数据库访问 | PostgreSQL 的特定功能 视图层 Django 具有 “视图” 的概念,负责处理用户的请求并返回响应。通过以下链接查找所有你需要知道的有关视图的信息: 基础: URL配置 | 视图函数 | 便捷工具 | 装饰器 参考: 内置视图 | Request/response 对象 | TemplateResponse 对象 文件上传: 概览 | 文件对象 | 存储 API | 管理文件 | 自定义存储 基于的视图: 概览 | 内置显示视图 | 内置编辑视图 | 使用混入 | API 参考 | 扁平化索引 高级: 生成 CSV | 生成 PDF 中间件: 概览 | 内建的中间件 模板层 模板层提供了一个对设计者友好的语法用于渲染向用户呈现的信息。学习如何使用语法(面向设计者)以及如何扩展(面向程序员): 基础: 概述 对于设计者: 语法概述 | 内建标签及过滤器(filters) | 人性化 针对程序员: 模板 API | 自定义标签(tags)和过滤器(filters) 表单 Django 提供了一个丰富的框架来帮助创建表单和处理表单数据。 基础: 概览 | 表单 API | 内建字段 | 内建 widgets 进阶: 针对模型的表单 | 整合媒体 | 表单集 | 自定义验证 发进程 学习众多的组件及工具,来帮助你发和测试 Django 应用: 设置: 概览 | 完整的设置列表 应用程序: 概览 异常: 概览 django-admin.py 和 manage.py: 概览 | 添加自定义命令 测试: 介绍 | 书写并运行测试 | 包含的测试工具 | 高级主题 部署: 概览 | WSGI 服务器 | 部署静态文件 | 用 email 跟踪代码错误 管理 找到所有你想知道的,关于自动化管理界面的知识,Django 最受欢迎的特性之一: 管理站点 管理动作 管理文档生成器 安全 在 Web 应用的发展中,安全是最重要主题,Django 提供了多种保护手段和机制。 安全概览 在 Django 中披露的安全问题 点击劫持保护
  动易® SiteWeaver™ CMS 是一套面向各中小型站点建设和管理而设计研发的通用建站管理系统(又称内容管理系统),是目前国内用户数量最多(超过30万网站),最受用户欢迎的CMS系统。其强大的功能和简单易用的完善融合赢得了广大用户的一致认可。系统基于ASP语言和MSSQL/ACCESS数据库发,无论在稳定性、代码优化、运行效率、负载能力、安全等级、功能可操控性和权限严密性等方面都居国内外同产品领先地位。   该套动易系统在WEB发领域的领先地位勿容置疑,而今配合由QuickWAP发的动易内容管理系统的WAP适配程序更是令动易锦上添花。   QuickWAP问世于2005年7月底,凭着发人员对WAP发技术的熟悉和接入联通移动业务的丰富经验,制作了第一款组件发平台,由于组件封装了多种功能模块、运行速度快于动态脚本+WML语言(如:ASP+WML),简化了WAP代码发,调试动态WAP程序简单,更加适合国人使用,使得QuickWAP受到极大的欢迎,尤其在中小型企业WAP建站方面应用更加广泛。   作为商业软件产品,QuickWAP在代码优化、运行效率、负载能力、安全等级等方面,赢得了广大用户的良好口碑,本着不断创新追求完美的设计理念,使得QuickWAP在国内外同产品中脱颖而出、独树一帜。经过效率最优化和负载能力最佳化设计的QuickWAP发平台,现已获得业内越来越多专家和权威企业的认可。   1.简化WAP代码   QuickWAP封装了多种功能模块,从而使您简化了WAP代码的编写,便于程序调试。WAP网页代码均采用UTF-8编码,使网页的兼容性和适应性更强,内部优化了WAP语言模块,用QuickWAP做的手机网站更容易通过W3C标准验证。   2.数据库支持   支持Microsoft SQL Server2000、2005和Microsoft Access2000以上数据库,通过维护数据库内容,更新WAP页面内容,自动过滤非法字符和HTML代码。WAP页面也可调用WEB数据库内容,达到同步互联。   3.编程灵活   使用QuickWAP能够让发人员编写WAP程序像使用ASP一样灵活自如,减小了单纯使用WML语言区分字符大小写的难度。即使不用懂WML和XHTML MP也可轻松上手制作复杂的动态WAP网站。   4.功能强大,速度快、运行稳定   QuickWAP具备ActiveX组件的所有优点,它可以被重复使用,只要在服务器上注册成功后,所有动态ASP网页程序(包含WAP页面和WEB页面)都可以通过创建对象的方式调用其中的功能模块。   5.代码封装,安全可靠   QuickWAP将应用程序中的商业逻辑封装到组件之中,更适合应用于企业WAP网站。内置非法关键字过滤功能,有助于国家扫黄打非进行。同时具有SQL防注入功能,当用户在地址栏恶意进行特殊符号输入时,QuickWAP会自动停止源代码的运行,极大的提高了服务器的安全性。   6.集多种技术、语言于一体,将实用性、易用性发挥的淋漓尽致。   QuickWAP的发集成了微软的ASP、VB、ActiveX、Windows2003(2007)、IIS6.0(5.0)、Access、MSSQL2000(2005)、SQL和WAP的WML、XHTML MP语言,以及ASPJPEG、JMail组件、CSS语言等技术于一体,其中以微软的各种技术为核心,支持Windows XP、2000、2003 Server、2007等微软的操作系统(服务器)。   7.发接口对外公功能易于拓展。   QuickWAP提供有WAP1.2、2.0中英文模块,所有功能模块均有详细说明及代码实例,发者不但可以利用现有的QuickWAP源码程序(现已有十余套WAP代码免费源),还可以进行二次发,为您发WAP节省时间,提高效率,为中国普及WAP贡献力量。 动易内容管理系统的WAP适配程序主要特点:   ●此适配程序以动易® SiteWeaver™ 内容管理系统6.8 为基础,支持MSSQL和ACCESS版动易。   ●自动获得自建频道,自动判断频道别,并且显示。   ●可自动辨别浏览器型,屏蔽IE或WAP模拟器的访问。   ●自动调用动易WEB的最新公告,按从新到旧依次显示。   ●前台页面设计(样式)和程序基本分离,可以通过外置样式表(style.css)进行样式设置。   ●栏目支持二三级分,二三级栏目可以混用,每一级支持无限个子栏目。支持无限个专题。   ●支持中文一键切换功能,方便大陆与港澳台地区人民访问。   ●优化读取动易数据库、对表中内容进行优化、过滤显示。   ●具有站内搜索,包含产品、新闻、图片,仅提供标题搜索。   ●文章栏目和下载栏目可以继承动易的注册会员下载或阅读权限。   ●当动易WEB频道的目录做为一个独立子站点来访问时,WAP适配自动获取子站点域名,并以子站点域名引用文件。   ●动易WEB的自定义栏目列表文件的存放位置,WAP适配会自动获取,无需人为设置。   ●完全同步新闻、下载、图片的评论功能,可以发布评论,评论后默认为非审核,通过动易WEB后台审核方可显示。 动易内容管理系统的WAP适配程序主要功能模块:   ●文章模块   ●下载模块   ●图片模块   ●留言模块 文章模块功能简介   ●自动获取数据库的文章内容,并且过滤HTML元素,文章自动进行分页分页样式和字数均可自定义。   ●文章中的上传插图也会以缩略图形式显示,必须配合ASPJPEG组件完成,但是没有该组件依旧可以使用,点击缩略图查看或下载原图。   ●支持“上下篇文章”功能,可以通过此进行阅读文章,而不必返回列表目录。   ●字符替换(过滤敏感字)管理功能。可以对文章内容中出现的非法文字按站长事先指定的规则进行替换或过滤。   ●支持文章评论功能,通过动易WEB后台进行评论管理、管理员回复等功能。 下载模块功能简介   ●支持软件名称、软件版本、软件简介、发商、来源、软件别、软件语言、授权形式、运行平台、软件缩略图、解压密码。   ●如果服务器支持ASPJPEG组件,则自动生成软件缩略图,点击缩略图查看或下载原图。   ●每个软件支持无限多个下载地址。自动分析动易WEB下载地址,WAP适配进行下载。   ●支持“上下篇软件”功能,可以通过此进行查看软件,而不必返回列表目录。   ●字符替换(过滤敏感字)管理功能。可以对下载内容中出现的非法文字按站长事先指定的规则进行替换或过滤。   ●支持软件评论功能,通过动易WEB后台进行评论管理、管理员回复等功能。 图片模块功能简介   ●如果服务器支持ASPJPEG组件,则自动生成图片缩略图,点击缩略图查看或下载原图。   ●支持图片名称、图片作者、图片来源、图片简介。   ●支持“上下篇图片”功能,可以通过此进行查看图片,而不必返回列表目录。   ●字符替换(过滤敏感字)管理功能。可以对图片内容中出现的非法文字按站长事先指定的规则进行替换或过滤。   ●支持图片评论功能,通过动易WEB后台进行评论管理、管理员回复等功能。 留言板模块功能简介   ●将动易WEB留言完美显示在WAP上,过滤其中的HTML代码,将留言内容正确显示。   ●支持“上下篇留言”功能,可以通过此进行查看留言,而不必返回列表目录。 系统运行环境 操作系统   服务器使用中文版Windows 2003、Windows 2000或 Windows XP(专业版)操作系统。 脚本解释器   程序所需的脚本解释引擎支持为Vbscripts5.6 以上版本(安装IE6即可获得)。 Web 服务器   服务器需要安装IIS5.0 或IIS6.0 数据引擎   使用MS SQL Server 2000、MS SQL Server 2005数据库或MS ACCESS 2000数据库。 权限要求   对Sql Server 数据库具有建表、备份的权限,对Access 数据库具有写权限。 QuickWAP组件   服务器需要安装最新QuickWAP组件。 系统安装步骤   1、安装QuickWAP组件。将QuickWAP.dll拷贝到System32文件夹下,在始菜单运行 regsvr32 QuickWAP.dll 即可。   2、在动易WEB的源码根目录下新建文件夹“WAP”,将适配代码拷贝到“WAP”文件夹下。   3、设置动易的数据库路径,打WapConfig/WapConfig.asp,进行相关设置。如果为Access数据库则是要修改XML.MdbPath,用于设置为动易WEB数据库对于刚才新建的“WAP”文件夹的相对路径。如果为MSSQL数据库,则设置   XML.SqlServerName="202.99.160.68" '"数据库服务器名或IP地址。   XML.SqlUserId="sa" '您的登录帐号。   XML.SqlUserPwd="sa" '您的登录密码。   XML.SqlDBName="Article" '您的数据库名称。   4、怎样进行访问。这时我们就可以通过你的网站域名,比如为www.quickwap.net,那么WAP访问为www.quickwap.net/wap。如果为MSSQL数据库,你可以将wap.quickwap.net域名绑定子目录“WAP”,这样你可以通过wap.quickwap.net访问。   至此,已经完成动易内容管理系统的WAP适配程序的安装工作,既然是WAP/WEB同步适配,那么自然WAP是不需要后台的,所有维护是通过动易自带的WEB站来管理的。
动易® SiteWeaver™ CMS 是一套面向各中小型站点建设和管理而设计研发的通用建站管理系统(又称内容管理系统),是目前国内用户数量最多(超过30万网站),最受用户欢迎的CMS系统。其强大的功能和简单易用的完善融合赢得了广大用户的一致认可。系统基于ASP语言和MSSQL/ACCESS数据库发,无论在稳定性、代码优化、运行效率、负载能力、安全等级、功能可操控性和权限严密性等方面都居国内外同产品领先地位。   该套动易系统在WEB发领域的领先地位勿容置疑,而今配合由QuickWAP发的动易内容管理系统的WAP适配程序更是令动易锦上添花。   QuickWAP问世于2005年7月底,凭着发人员对WAP发技术的熟悉和接入联通移动业务的丰富经验,制作了第一款组件发平台,由于组件封装了多种功能模块、运行速度快于动态脚本 WML语言(如:ASP WML),简化了WAP代码发,调试动态WAP程序简单,更加适合国人使用,使得QuickWAP受到极大的欢迎,尤其在中小型企业WAP建站方面应用更加广泛。   作为商业软件产品,QuickWAP在代码优化、运行效率、负载能力、安全等级等方面,赢得了广大用户的良好口碑,本着不断创新追求完美的设计理念,使得QuickWAP在国内外同产品中脱颖而出、独树一帜。经过效率最优化和负载能力最佳化设计的QuickWAP发平台,现已获得业内越来越多专家和权威企业的认可。   1.简化WAP代码   QuickWAP封装了多种功能模块,从而使您简化了WAP代码的编写,便于程序调试。WAP网页代码均采用UTF-8编码,使网页的兼容性和适应性更强,内部优化了WAP语言模块,用QuickWAP做的手机网站更容易通过W3C标准验证。   2.数据库支持   支持Microsoft SQL Server2000、2005和Microsoft Access2000以上数据库,通过维护数据库内容,更新WAP页面内容,自动过滤非法字符和HTML代码。WAP页面也可调用WEB数据库内容,达到同步互联。   3.编程灵活   使用QuickWAP能够让发人员编写WAP程序像使用ASP一样灵活自如,减小了单纯使用WML语言区分字符大小写的难度。即使不用懂WML和XHTML MP也可轻松上手制作复杂的动态WAP网站。   4.功能强大,速度快、运行稳定   QuickWAP具备ActiveX组件的所有优点,它可以被重复使用,只要在服务器上注册成功后,所有动态ASP网页程序(包含WAP页面和WEB页面)都可以通过创建对象的方式调用其中的功能模块。   5.代码封装,安全可靠   QuickWAP将应用程序中的商业逻辑封装到组件之中,更适合应用于企业WAP网站。内置非法关键字过滤功能,有助于国家扫黄打非进行。同时具有SQL防注入功能,当用户在地址栏恶意进行特殊符号输入时,QuickWAP会自动停止源代码的运行,极大的提高了服务器的安全性。   6.集多种技术、语言于一体,将实用性、易用性发挥的淋漓尽致。   QuickWAP的发集成了微软的ASP、VB、ActiveX、Windows2003(2007)、IIS6.0(5.0)、Access、MSSQL2000(2005)、SQL和WAP的WML、XHTML MP语言,以及ASPJPEG、JMail组件、CSS语言等技术于一体,其中以微软的各种技术为核心,支持Windows XP、2000、2003 Server、2007等微软的操作系统(服务器)。   7.发接口对外公功能易于拓展。   QuickWAP提供有WAP1.2、2.0中英文模块,所有功能模块均有详细说明及代码实例,发者不但可以利用现有的QuickWAP源码程序(现已有十余套WAP代码免费源),还可以进行二次发,为您发WAP节省时间,提高效率,为中国普及WAP贡献力量。 动易内容管理系统的WAP适配程序主要特点:   ●此适配程序以动易® SiteWeaver™ 内容管理系统6.8 为基础,支持MSSQL和ACCESS版动易。   ●自动获得自建频道,自动判断频道别,并且显示。   ●可自动辨别浏览器型,屏蔽IE或WAP模拟器的访问。   ●自动调用动易WEB的最新公告,按从新到旧依次显示。   ●前台页面设计(样式)和程序基本分离,可以通过外置样式表(style.css)进行样式设置。   ●栏目支持二三级分,二三级栏目可以混用,每一级支持无限个子栏目。支持无限个专题。   ●支持中文一键切换功能,方便大陆与港澳台地区人民访问。   ●优化读取动易数据库、对表中内容进行优化、过滤显示。   ●具有站内搜索,包含产品、新闻、图片,仅提供标题搜索。   ●文章栏目和下载栏目可以继承动易的注册会员下载或阅读权限。   ●当动易WEB频道的目录做为一个独立子站点来访问时,WAP适配自动获取子站点域名,并以子站点域名引用文件。   ●动易WEB的自定义栏目列表文件的存放位置,WAP适配会自动获取,无需人为设置。   ●完全同步新闻、下载、图片的评论功能,可以发布评论,评论后默认为非审核,通过动易WEB后台审核方可显示。 动易内容管理系统的WAP适配程序主要功能模块:   ●文章模块   ●下载模块   ●图片模块   ●留言模块 文章模块功能简介   ●自动获取数据库的文章内容,并且过滤HTML元素,文章自动进行分页分页样式和字数均可自定义。   ●文章中的上传插图也会以缩略图形式显示,必须配合ASPJPEG组件完成,但是没有该组件依旧可以使用,点击缩略图查看或下载原图。   ●支持“上下篇文章”功能,可以通过此进行阅读文章,而不必返回列表目录。   ●字符替换(过滤敏感字)管理功能。可以对文章内容中出现的非法文字按站长事先指定的规则进行替换或过滤。   ●支持文章评论功能,通过动易WEB后台进行评论管理、管理员回复等功能。 下载模块功能简介   ●支持软件名称、软件版本、软件简介、发商、来源、软件别、软件语言、授权形式、运行平台、软件缩略图、解压密码。   ●如果服务器支持ASPJPEG组件,则自动生成软件缩略图,点击缩略图查看或下载原图。   ●每个软件支持无限多个下载地址。自动分析动易WEB下载地址,WAP适配进行下载。   ●支持“上下篇软件”功能,可以通过此进行查看软件,而不必返回列表目录。   ●字符替换(过滤敏感字)管理功能。可以对下载内容中出现的非法文字按站长事先指定的规则进行替换或过滤。   ●支持软件评论功能,通过动易WEB后台进行评论管理、管理员回复等功能。 图片模块功能简介   ●如果服务器支持ASPJPEG组件,则自动生成图片缩略图,点击缩略图查看或下载原图。   ●支持图片名称、图片作者、图片来源、图片简介。   ●支持“上下篇图片”功能,可以通过此进行查看图片,而不必返回列表目录。   ●字符替换(过滤敏感字)管理功能。可以对图片内容中出现的非法文字按站长事先指定的规则进行替换或过滤。   ●支持图片评论功能,通过动易WEB后台进行评论管理、管理员回复等功能。 留言板模块功能简介   ●将动易WEB留言完美显示在WAP上,过滤其中的HTML代码,将留言内容正确显示。   ●支持“上下篇留言”功能,可以通过此进行查看留言,而不必返回列表目录。   系统运行环境 操作系统   服务器使用中文版Windows 2003、Windows 2000或 Windows XP(专业版)操作系统。 脚本解释器   程序所需的脚本解释引擎支持为Vbscripts5.6 以上版本(安装IE6即可获得)。 Web 服务器   服务器需要安装IIS5.0 或IIS6.0 数据引擎   使用MS SQL Server 2000、MS SQL Server 2005数据库或MS ACCESS 2000数据库。 权限要求   对Sql Server 数据库具有建表、备份的权限,对Access 数据库具有写权限。 QuickWAP组件   服务器需要安装最新QuickWAP组件。   系统安装步骤   1、安装QuickWAP组件。将QuickWAP.dll拷贝到System32文件夹下,在始菜单运行 regsvr32 QuickWAP.dll 即可。   2、在动易WEB的源码根目录下新建文件夹“WAP”,将适配代码拷贝到“WAP”文件夹下。   3、设置动易的数据库路径,打WapConfig/WapConfig.asp,进行相关设置。如果为Access数据库则是要修改XML.MdbPath,用于设置为动易WEB数据库对于刚才新建的“WAP”文件夹的相对路径。如果为MSSQL数据库,则设置   XML.SqlServerName="202.99.160.68" '"数据库服务器名或IP地址。   XML.SqlUserId="sa" '您的登录帐号。   XML.SqlUserPwd="sa" '您的登录密码。   XML.SqlDBName="Article" '您的数据库名称。   4、怎样进行访问。这时我们就可以通过你的网站域名,比如为www.quickwap.net,那么WAP访问为www.quickwap.net/wap。如果为MSSQL数据库,你可以将wap.quickwap.net域名绑定子目录“WAP”,这样你可以通过wap.quickwap.net访问。   至此,已经完成动易内容管理系统的WAP适配程序的安装工作,既然是WAP/WEB同步适配,那么自然WAP是不需要后台的,所有维护是通过动易自带的WEB站来管理的。

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧