随笔分类 - ASP.NET
摘要:在url中带returnurl可以方便的重定向到原请求页面,但是链接可能会被修改,可能会跳到精心设计的钓鱼网页,并显示密码错误,需要再次输入密码,如果输入密码,密码就会泄露。解决这个问题,需要在重定向前检测重定向页面是否合法ASP.NET中的解决方法,编写如下扩展类View Code public static class RequestExtensions { public static bool IsUrlLocalToHost(this HttpRequest request, string url) { if (Strin...
阅读全文
摘要:ASP.NET中默认的MembershipProvider和RoleProvider是Sql Server的,要使用需要先在数据库aspnet_regsql注册一个对应的数据库WebForm中提供的登录控件的验证是使用默认Membership实现的,可以完全不写后台代码拉几个控件就完成登录,注册,密码修改等功能但是默认的提供类有时候不能满足要求,如数据库不是Sql Server,或者想使用自己的数据库表结构等原因不想使用自带的提供类,可以自定义提供类主要就是实现2个抽象基类RoleProvider和MembershipProvider网站结构:在web.config中定义forms验证的路径和
阅读全文
摘要:string user = "userName"; //默认的第1种,超时时间是在web.cofig中forms设置的timeout,单位是分钟,生成的cookie和凭证超时时间一样 FormsAuthentication.RedirectFromLoginPage(user, true); //第二种,自定义cookie超时时间,但是即使cookie没超时凭证超时,还是需要重新登录 HttpCookie AuthCookie = FormsAuthentication.GetAut...
阅读全文
摘要:roles和user都属于forms验证的配置参数,用法也类似,user是针对单个用户,roles是针对一组用户要使用roles要在web.config的<system.web>中加入<roleManager enabled="true">以启用验证在Global.asax要初始化Roles(如果之前没有初始化值) void Application_Start(object sender, EventArgs e){ if(!Roles.RoleExists("admin")) Roles.CreateRole("adm
阅读全文
摘要:网站结构如下: /default.aspx /login.aspx /adminlogin.aspx /member/*.aspx /admin/*.aspx需求:访问/member/路径下的页面的请求转向到/login.aspx; 访问/admin/路径下的页面的请求被转向到/adminlogin.aspx;<system.web> <authentication mode="Forms"> <forms loginUrl="/Login.aspx" name=".ASPXFORMSAUTH">
阅读全文
摘要:PageAsyncTask是任务类,通过Page.RegisterAsyncTask来注册,Page.ExecuteRegisteredAsyncTasks()调用页面代码:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" AsyncTimeout="4" %><html xmlns="http://www.w3.org/1999/x
阅读全文
摘要:protected void Button1_Click(object sender, EventArgs e) { /* 微软为Response对象提供了一个新的方法TransmitFile来解决使用Response.BinaryWrite 下载超过400mb的文件时导致Aspnet_wp.exe进程回收而无法成功下载的问题。 代码如下: */ Response.ContentType = "application/x-zip-co...
阅读全文
摘要:HttpUtility 的静态方法用于处理编码解码等
阅读全文
摘要:在web.config中的 <system.web> </system.web>内加入如下代码: <httpRuntime executionTimeout="600" maxRequestLength="951200" useFullyQualifiedRedirectUrl="true" minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100" e
阅读全文
摘要:<%@ Page Language="C#" AutoEventWireup="true" %><%@ Import Namespace="System.Runtime.InteropServices" %><%@ Import Namespace="System.IO" %><%@ Import Namespace="System.Data" %><%@ Import Namespace="System.Reflection&qu
阅读全文
摘要:数据绑定控件中模板中使用服务端控件时,属性中有数据绑定只能是<%#Eval()%>前面不能加其他内容如需要设置"~\Dir\<%#Eval()%>"需要在后置文件定义一个处理函数 protected string ConvertStr(object str) { return @"~\Dir\" + str; }aspx中调用<%#ConvertStr(Eval("BindingField"))%>
阅读全文
摘要:<asp:Repeater ID="Repeater1" runat="server" DataSourceID="ObjectDataSource1" onitemdatabound="Repeater1_ItemDataBound"> <ItemTemplate> <asp:Label ID="LabelName" runat="server" Text='<%#Eval("NickName") %>&
阅读全文
摘要:①<script runat="server">代码段与<%%>内联代码段的区别在asp.net页面的aspx文件中允许使用<script runat="server">和<%%>标记来插入代码片断。这两种方式有什么区别呢?<script runat="server">标记中的代码跟.cs文件中的代码地位是一致的,比如像下面这样声明一段事件处理代码<script runat="server"> protected void TextBox1_T
阅读全文
浙公网安备 33010602011771号