asp.net网站开发包wq.dll打包下载
所有wq对象,按照他们的功能进行了分类,分别放在5个不同的名称空间下:
using wq.data;//数据库操作类
using wq.rewriter;//伪url配置类
using wq.server;//服务器信息类(这个没完成)
using wq.text;//字符串操作类(这是个静态类,全是静态方法)
using wq.web;//网页常用类(目前只完成了图片水印类)
压缩包下载:
先说一下一个最重要的accessdata类,使用时很简单:
using wq.data;
public datatable newstable;
protected void page_load(object sender, eventargs e)
{
accessdata mydata = new accessdata();
mydata.open();
mydata.commandtext="select * from [news]";
newstable=mydata.executedatatable();//返回一个datatable;
mydata.close();
}
在.aspx页面显示
<ul>
<%foreach(system.data.datarow r in newstable.rows){%>
<li><a href="xxx.aspx?id=<%=r["id"].tostring()%>"><%=r["title"].tostring()%></a></li>
<%}%>
</ul>
如果你想把数据在一个gridview中:
gridview1.datasource=mydata.executedatatable();
gridview1.databind();
需要说明的是,上面我们没有看到数据库的驱动,因为驱动是在web.config配置文件中取的,所以在使用这个类时,请先配置。
<connectionstrings>
<add name="connstring" connectionstring="provider=microsoft.jet.oledb.4.0;data source=|datadirectory|pub.mdb" providername="system.data.oledb"/>
</connectionstrings>
如果你有多个access数据库,例:
<connectionstrings>
<add name="connstring" connectionstring="provider=microsoft.jet.oledb.4.0;data source=|datadirectory|pub.mdb" providername="system.data.oledb"/>
<add name="connmac" connectionstring="provider=microsoft.jet.oledb.4.0;data source=|datadirectory|mac.mdb" providername="system.data.oledb"/>
<add name="conncai" connectionstring="provider=microsoft.jet.oledb.4.0;data source=|datadirectory|cai.mdb" providername="system.data.oledb"/>
</connectionstrings>
配置的时候name不能相同,accessdata.open()默认打开的是name="connstring"这个数据库,如果你想打开其它的数据库(name="connmac"):
accessdata mydata = new accessdata();
mydata.webconfigconnectionname="connmac";
mydata.open();
....
mydata.close();//关闭数据库不要忘了
如果你没有或者不想配置web.config,也可以直接把驱动写进构造函数:
string connstring="provider=microsoft.jet.oledb.4.0;data source="+server.mappath("~/app_data/pub.mdb");
accessdata mydata = new accessdata(connstring);
mydata.open();
....
mydata.close();
如果你查询的数据只有一条,可以直接返回一个arraylist:
mydata.commandtext="select [title],[content],[datetime] from [news] where id=3";
arraylist newslist=mydata.executearraylist();//返回一个arraylist
在使用的时候,就可以直接使用这种轻最的数据了:
<div>
<div><label>新闻标题:<%=newslist[0].tostring()%></label></div>
<div>新闻内容:<%=newslist[1].tostring()%></div>
<div>发布日期:<%=newslist[2].tostring()%></div>
</div>
还有其它的方法,我这里就不一一举例了:
mydata.executenonquery();//执行当前sql语句,并返回受影响的行数
mydata.executereader();//执行当行sql语句,并生成一个oledbdatareader
mydata.executescalar();//执行当行sql语句,并返回第一行第一列的数据,忽略其它行数据
mydata.getrowscount(string tabelname);//返回一个表的总行数据
下面说一下,这个accessdata类的分页属性datapages,wq.data下专门有个分页类,来处理分页:
using wq.data;
public datapages newstable;
protected void page_load(object sender, eventargs e)
{
accessdata mydata = new accessdata();
mydata.open();
mydata.commandtext="select * from [news]";
newstable=mydata.datapages;//返回一个分页集对象;
mydata.close();
newstable.pagesize=10;//每页分10行
newstable.pageindex=3;//将当前页定位到3页
}
下面在来说一下伪url配置类,这个类不需要实例化和使用,(你的项目里一定要引用wq.dll)只需要对配置文件web.config进行配置就行了。首先在<configuration>节点中加入:
<configsections>
<section name="rewriterconfig" type="wq.rewriter.rewriterconfigserializersectionhandler" />
</configsections>
记住这个要加个最前面,然后在<system.web>加入或修改:
<httpmodules>
<add name="modulerewriter" type="wq.rewriter.moduleurlrewriter" />
</httpmodules>
最后配置重写规则:
<configsections>
<section name="rewriterconfig" type="wq.rewriter.rewriterconfigserializersectionhandler" />
</configsections>
<rewriterconfig>
<rules>
<!-- 伪url重写配置 -->
<rewriterrule>
<lookfor>~/news/(\d{1,4}).aspx</lookfor>//伪路径
<sendto>~/nt_event.aspx?cid=$1</sendto>//原始路径
</rewriterrule>
<rewriterrule>
<lookfor>~/news/(\w{1,6})/(\w{1,6})/abc.aspx</lookfor>//伪路径
<sendto><![cdata[~/default.aspx?act=$1&key=$2]]></sendto>原始路径
</rewriterrule>
</rules>
</rewriterconfig>
这样伪url就配置完成了,整个项目就可以使用这些伪规则了,注意.net只能托管.aspx文件。
这些类的详细属性和方法说明,在使用的时候都会有提示,不能用大量篇幅全部举例描述和说明了,还有什么疑问的给我email或在群里讨论了。
下一篇: PHP实现的DES加密解密封装类完整实例