无为清净楼资源网 Design By www.qnjia.com
并不是我不开源,我是觉得包起来方便一点,我没有加密,要看源代码的直接反编一下就看到了。
所有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或在群里讨论了。

标签:
asp.net,网站开发包

无为清净楼资源网 Design By www.qnjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
无为清净楼资源网 Design By www.qnjia.com

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。