ASP.NET使用无Cookie的表单认证票据
ASP.NET
使用无Cookie的表单认证票据
默认情况下,forms authentication system将决定是将票据存储在cookies
collection里还是插入用户访问页面的URL里。所有主流的桌面浏览器,比如Internet
Explorer,Firefox,Opera,或Safari都支持cookies,但并非所有的移动设备都支持。
forms authentication system使用何种cookie策略,取决于
元素里的cookieless设置,它可以有如下四种配置:
.UseCookies——指定总是使用基于cookie的票据
.UseUri——指定从不使用基于cookie的票据
.AutoDetect——如果device
profile不支持cookies,就不使用基于cookie的票据;如果device
profile支持cookies,那么就运用一种探测机制来判断是否可以使用cookies.
.UseDeviceProfile——这是默认值,如果device
profile支持cookies,就使用基于cookie的票据,不运用探测机制。
其中,AutoDetect 和
UseDeviceProfile选项都依靠一个device
profile来判断是使用基于cookie还是无cookie的票据。ASP.NET有一个关于这种devices及其性能的数据库,比如某种
devices是否支持cookies,它支持那个版本的JavaScript等信息。每次,当一个device向服务器发出对某个页面的请求时,该请求
里将包含一
个名为“user-agent”的HTTP
header,用于表明device的类型。ASP.NET
将自动的把提供的user-agent字符串与数据库里相应的信息匹配起来。
注意:
该数据库
存储在很多的XML文件里.这些默认的device
profile文件,其路径为%WINDIR%\Microsoft.Net\Framework\v2.0.50727\CONFIG
\Browsers。你也可以在你应用程序的App_Browsers文件夹里添加自定义的文件,关于这方面的更多信息,请参阅文章《How To:
Detect Browser Types in ASP.NET Web Pages》
由于默认使用的是UseDeviceProfile选项.当访问站点的某个device不支
持cookies时,就站点就使用无cookie的票据.
在URL里对票据进行编码
当浏览器每次向某个站点发出请求时,用来存储信息的载体通常是Cookies。但如果访问站
点的device不支持Cookies的话,我们必须使用某种方法在客户端和服务器端传递票据,通常的做法是在URL里将cookie数据编码。
为了进行演示,我们将强迫站点使用无cookie的票据,为此我们将采用UseUri:
做了上述修改后,通过浏览器访问.当以匿名用户进行访问时,URL看起来和以前没什么区别,
相关文档:
模板化的数据绑定控件为我们在页面上显示数据提供了根本的灵活性。你可能还记得ASP.NET v1.x中的几个模板化控件(例如DataList和Repeater控件)。ASP.NET 2.0仍然支持这些控件,但在模板中绑定数据的语法已经被简化和改善了。本文将讨论在数据绑定控件模板中绑定数据的多种方法。
数据绑定表达式
ASP.NET 2.0改善了模板中 ......
IIS 7
IIS7自身有对MVC的支持,部署方法同其他web application基本相同,需要注意的是,mvc 2.0 application在Handler Mappings里面会有MvcHttpHandler,如图:
我使用的是.net 4.0,我看了其他.net 2.0 的web appliation下的Handler Mappings都没有这个handler maping。
注意:.net 3.5以下(包括)的web application p ......
今天在用DataList的模板列的时候习惯性地像在03中那样去给模板列的绑定字段加个处理函数:
< asp:Label ID = " Label1 " runat = " server " Text = ' <%#ConvertState(Bind("Status"))%> ' ></ asp:Label >
可是竟然出错:当前上下文中不存在名称“Bind” ......
asp.net 获取html控件的值的代码如下:
WebForm1.aspx:
< INPUT ID="TXT" TYPE="TEXT" RUNAT="SERVER" VALUE="AAAAAA">
< INPUT TYPE="BUTTON" RUNAT="SERVER" VALUE="BTNTEST" ID="BUTTON1"&nb ......
1、建立数据层 连接数据库->建立数据集*.xsd->表中建立查询方法
2、建立业务逻辑层 包装TableAdapter方法成类
3、建立母板页和站点导航( CSS待学习)
4、使用数据源展现数据 五种数据源 编辑数据源参数 使用tableadapter方法
5、使用dropDownList过滤主-从报表
使用tableadapter方法 ......