PetShop渐近记(1)

80酷酷网    80kuku.com

从今天开始,要做WEB了,当然,有必要开始学习PetShop了

一、安装

       安装过程中需要输入的SQL SERVER的验证方式,这两种就不介绍了。进入后,打VS,并打开PetShop的工程项目,一运行提示如下错误:

?/MSPetShop?????????????



?? 'NT AUTHORITY\NETWORK SERICE' ?????




 


解决方法

第一步:把'NT AUTHORITY\NETWORK SERVICE' 添加到Administrator组中

我的电脑-->右键-->管理-->本地用户和组

选择“组”-->双击Administrators-->单击“添加”-->单击“高级”-->单击“立即查找”-->在下面的列表中选择Network Service用户-->两次单击“确定”-->加入。


 


第二步 在企业管理器中加入NETWORK SERVICE用户

打开Sql Server企业管理器-->选择数据库实例-->打开“安全性”节点-->选择“登录”-->在右边的列表中单击右键-- >选择“新建登录”-->在“常规”选项卡中单击“名称”旁边的按钮“...”-->选择“Administrators”组-- >单击下面的“成员”按钮-->选择“Network Service”-->单击“添加”按钮-->单击“确定”,返回“新建登录”对话框-->保证身份验证类型为“windows验证” 和“允许访问”-->单击“确定”-->关闭“企业管理器”


 


忘了重要一点,要加上mspetshop这两个DB的访问权


 


第三步

重新运行asp.net程序,数据库连接字符串选择windows验证即可。

解决了吗?还不行?还是老实的再看看书<<.Net 程序设计技术内幕>>

嗯还是找找WEB的安全性话题吧

Asp.Net在请求者在发出请求后就去验证请求者的合法性,以判断是否此请求合法

验证有三种

1.       Windows验证: asp.net 向IIS寻求帮助。IIS对调用者的身份验证后,把调用者的身份告诉Asp.net。当然这种验证的结果会传给以后的每个请求,这种验证场合多为公司内部,Windows验证的根本目标就是将传入请求映射到WEB服务器的用户帐户上,允许使用OS内置的安全机制,来保护文件和其他资源文件不被未授予权的用户非法访问

2.       Passport验证:依赖MS的 Passport来验证用户身份,最好的例子就是MSN的,更多的情况大家还是去下载Passport SDK,MS网站上有

3.       窗体验证: 这种是依靠WEB页中的登录窗体来验证用户的。比如我们一般网站的登录窗体

疑问?那怎么让Asp.Net知道我是要哪种类型的验证呢,哦,在Web.Config文件里,

找到<authentication mode=”Forms” />

其他的mode值有None,Windows,Passport

好了,问题解决了,这些题外话暂时不说了,要不然又是一大章

打开default.aspx,发现一些没有见过的语句

<% Page Language="c#" AutoEventWireup="false" enableSessionState="ReadOnly"%>

<% Register TagPrefix="PetsControl" TagName="Banner" Src="Controls/Banner.ascx" %>

<% Register TagPrefix="PetsControl" TagName="NavBarNoMenu" Src="Controls/NavBarNoMenu.ascx" %>


 


好了,解释一下

  Page 指令的 AutoEventWireup 属性被设置为 true(或者如果缺少此属性,因为它默认为 true),该页框架将自动调用页事件,即 Page_Init 和 Page_Load 方法。在这种情况下,不需要任何显式的 Handles 子句或委托。

很显然,这首页里,只是一个纯静态页界,不需要加载页面事件,故可为false,

 MSDN的解释是如下


enableSessionState



   



指定是否启用会话状态。



   



true



指示会话状态已启用。



   



false



指示会话状态未启用。



   



ReadOnly



指定应用程序可以读取但不能修改会话状态变量。





 


第三行<% Register TagPrefix="PetsControl" TagName="NavBarNoMenu" Src="Controls/NavBarNoMenu.ascx" %>

tagprefix



与命名空间关联的别名。



tagname



与类关联的别名。



Namespace



与 tagprefix 关联的命名空间。



Src



与 tagprefix:tagname 对关联的声明性用户控件文件的位置(相对的或绝对的)。



Assembly



与 tagprefix 关联的命名空间所驻留的程序集。



注意   程序集名称不包括文件扩展名。




 


今天先了解一个一些概念的东东,明天继续


 


 

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: