当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net网站开发包wq.dll打包下载

ASP.NET
Asp.net利用JQuery弹出层加载数据代码
asp.net dataview做无限极分类的又一用法
asp.net ckeditor编辑器的使用方法
告别ADO.NET实现应用系统无缝切换的烦恼(总结篇)
asp.net 实现动态显示当前时间(不用javascript不考虑开销)
.net动态显示当前时间(客户端javascript)
asp.net 结合YUI 3.0小示例
asp.net 取消缓存相关问题说明
asp.net 计划任务管理程序实现,多线程任务加载
ASP.NET 跨页面传值方法
asp.net中url地址传送中文参数时的两种解决方案
Asp.net 菜单控件简洁版
asp.net jQuery Ajax用户登录功能的实现
asp.net SharpZipLib的压缩与解压问题
asp.net url重写后页面回传问题
asp.net与Discuz!NT整合集成实例教程
Discuz!NT 3与asp.net 整合的实例教程
测试控制台使用方法
.net 动态标题实现方法
asp.net *.ashx类型的文件使用说明

ASP.NET 中的 asp.net网站开发包wq.dll打包下载


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 45 ::
收藏到网摘: n/a

这个wq.dll主要是用来给Web群和C#联盟群及GUI群的朋友使用的,其它群和使用控件开发web的朋友可以直接无视,这个封装好的包是一个基础开发包,可以轻松的帮你完成一些小型网站的开发,支持.Net Framework2.0(及以上平台)。 并不是我不开源,我是觉得包起来方便一点,我没有加密,要看源代码的直接反编一下就看到了。
所有WQ对象,按照他们的功能进行了分类,分别放在5个不同的名称空间下:
复制代码 代码如下:

using WQ.Data;//数据库操作类
using WQ.Rewriter;//伪URL配置类
using WQ.Server;//服务器信息类(这个没完成)
using WQ.Text;//字符串操作类(这是个静态类,全是静态方法)
using WQ.Web;//网页常用类(目前只完成了图片水印类)

压缩包下载:wq.rar

先说一下一个最重要的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或在群里讨论了。