随笔分类 -  ASP.NET

ASP.NET技术(含WebForm、MVC)
摘要:第1到3题解答如下: public enum QuestionType { Text = 0, MultipleChoice = 1 } public interface IQuestion { string Title { get; set; } QuestionType Category { get; } } public abstract class QuestionBase : IQuestion { public string Title { get; set; } public abstract QuestionType Category { get; } public virtual string GetAnswer() { return "默认答案"; } } public 阅读全文
posted @ 2014-11-24 12:43 梦在旅途 阅读(809) 评论(4) 推荐(0) 编辑
摘要:这里解析key的方式是寻找parameterName[index].Key这样的结构、解析value的方式是寻找parameterName[index].Value这样的结构。如果key或者value是复杂类型(如上面例子中的Information类型),则parameterName[index].Key或parameterName[index].value将被视为前缀(也可以理解为某个类型)而.PropertyName被视为后缀(即某个属性)。这里的索引也要求必须是以0开始的不间断的正整数。否则断开以后的部分将不会被解析。 构建IEnumerable, ICollection, IList, T[], Collection, 以及 List这类集合类型需要使用第一种语法。 而构建IDictionary 和 Dictionary这类集合需要使用第二种语法。 如果你不喜欢这种方式,你完全可以在Asp.net mvc中自定义一些binder来处理特定的类型。或者直接使用FormCollection。 阅读全文
posted @ 2014-11-12 17:17 梦在旅途 阅读(663) 评论(0) 推荐(0) 编辑
摘要:实现自动生成序号的方法很多,最常见的是通过添加GridView1_RowDataBound方法,然后在里面依据实际情况计算序号,我这人希望能越简单且越好用就最好了,所以我采用了上面的方法,核心代码是:(Container.DataItemIndex + GridView1.PageIndex+1),其中Container.DataItemIndex表示当前行索引,GridView1.PageIndex表示页索引,由于索引是从0开始,所以加上1就OK了,这样整个表就有序号了,而且在分页下也是连续性的,不会出现每页从1开始的情况。 阅读全文
posted @ 2014-11-07 13:13 梦在旅途 阅读(1834) 评论(0) 推荐(0) 编辑
摘要:1.1.WebForm优点   1)支持事件模型开发,得益于丰富的服务端组件,WebForm开发可以迅速的搭建Web应用   2)使用方便,入门容易 2.1.MVC优点 1)很容易将复杂的应用分成M,V,C三个组件模型,通过Model,View和Controller有效的简化了复杂的架构, 体现了很好的隔离原则   2)因为没有使用Server-Based forms。所以我们程序员控制的更加灵活,页面更加干净。   3)通过修改路由规则,可以控制生成自定义的url,因此控制生成seo友好的url将更加容易。 4)强类型的view实现,更安全,更可靠,更高效。   5)让web开发可以专注于某一层,更利于分工配合使用与大型架构开发   6)对异步处理提更好的支持   7)校验非常高   8)表单提交的时候,提供自动装配的功能    9)微软提供的全局的过滤器 10)可扩展性 11)易测试性 阅读全文
posted @ 2014-11-07 11:15 梦在旅途 阅读(990) 评论(1) 推荐(0) 编辑
摘要:我之前就已经实现了ASP.NET MVC分页(查看该博文),但它有局限性,必须确保在同一个视图中只能有一处分页,若需要在同一个视图中设置多个分页,却无能为力,为此,我重新对原先的代码进行了优化,增加了更为灵活的配置属性及生成规则,解决了上述问题. 阅读全文
posted @ 2014-10-23 12:10 梦在旅途 阅读(1447) 评论(10) 推荐(2) 编辑
摘要:方法一:通过Request.Form 方法二:通过映射到FormCollection 方法三:通过映射到控制器方法参数 方法四:通过映射到视图数据对象 方法五:通过调用UpdateModel方法 阅读全文
posted @ 2014-10-22 15:31 梦在旅途 阅读(2754) 评论(0) 推荐(1) 编辑
摘要:第一种:通过FTP来上传文件 首先,在另外一台服务器上设置好FTP服务,并创建好允许上传的用户和密码,然后,在ASP.NET里就可以直接将文件上传到这台 FTP 服务器上了 第二种:通过WebClient来上传文件 声明WebClient,然后通过OpenWriteCompletedEventHandler事件中读取上传文件流实现上传 第三种:通过Web Service来上传文件(与第二种其实原理有些相同) 定义Web Service类,并在另一个网站引用该服务,然后调用WEB服务类的上传与下载方法即可; 第四种:通过页面跳转或嵌套页面的方式(这种方法很简单,严格不算跨服务器,且有一定的局限性) 1.在需要上传文件的页面加入iframe,iframe的地址指向另一个服务器上传页面,并且页面需包含上传按钮; 2.需要上传时就利用JS的location.href或服务端的Response.redirect跳转至另一个服务器上传页面; 阅读全文
posted @ 2014-09-29 11:13 梦在旅途 阅读(5579) 评论(2) 推荐(0) 编辑
摘要:第一种:同主域但不同子域之间实现单点登陆 Form验证其实是基于身份cookie的验证。客户登陆后,生成一个包含用户身份信息(包含一个ticket)的cookie,这个cookie的名字就是在web.config里Authentication节form设定的name信息,如 这里,.ASPNETAUTH就是这个Cookie的名字。通过在Request.Cookies集合里包含这个cookie,实现用户身份信息的传递。所以,共享身份验证信息的思路很简单:只要这个身份验证cookie能在自域名中共享,Form验证信息自然可以共享! 阅读全文
posted @ 2014-09-06 11:46 梦在旅途 阅读(850) 评论(0) 推荐(0) 编辑
摘要:ASP.NET MVC中不能使用分页控件,所以我就自己写了一个分页局部视图,配合PageInfo类,即可实现在任何页面任意位置呈现分页,由于采用的是基于POST分页方式,所以唯一的限制就是必须放在FORM中,当然以后我会考虑实现基于URL分页的! 阅读全文
posted @ 2014-08-26 12:51 梦在旅途 阅读(1191) 评论(0) 推荐(0) 编辑
摘要:1.报错:请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理 解决方案地址:http://blog.csdn.net/canielau/article/details/7609613 2.报错:您要找的资源已被删除、已更名或暂时不可用。 解决方案地址:http://www.cnblogs.com/paulxie/archive/2013/06/08/3127234.html 阅读全文
posted @ 2014-05-13 12:55 梦在旅途 阅读(257) 评论(0) 推荐(0) 编辑
摘要:1.IIS7配置URL重写需要注意系统是32位还是64位的 2.IIS7 asp.net URL重写配置 3.从IIS6移植到IIS7,URL重写后报错检测到在集成的托管管道模式下不适用的 ASP.NET 设置。 阅读全文
posted @ 2014-05-13 11:41 梦在旅途 阅读(671) 评论(0) 推荐(1) 编辑
摘要:ASP.NET高并发解决方案 一、页面静态化; 二、运用WCF,WEB SERVICE等技术实现分布式业务逻辑处理及数据访问的能力; 三、页面缓存; 四、数据缓存; 五、建立图片文件服务器; 阅读全文
posted @ 2014-02-25 16:47 梦在旅途 阅读(1793) 评论(3) 推荐(0) 编辑
摘要:通过JavaScriptSerializer来实现。它的名字空间为:System.Web.Script.Serialization 如果要使用它,还须添加 System.Web.Extensions库文件引用 参考实体类:Customer public class Customer { public int Unid { get; set; } public string CustomerName { get; set; } } 类JavaScriptSerializer描述:为启用 AFAX 的应用程序提供序列化和反序列化功能。 阅读全文
posted @ 2013-12-13 15:21 梦在旅途 阅读(2492) 评论(0) 推荐(0) 编辑
摘要:Asp.net的身份验证有有三种,分别是"Windows | Forms | Passport",其中又以Forms验 证用的最多,也最灵活。 Forms 验证方式对基于用户的验证授权提供了很好的支持,可以通过一个登录页面验证 用户的身份,将此用户的身份发回到客户端的Cookie,之后此用户再访问这个web应用就 会连同这个身份Cookie一起发送到服务端。服务端上的授权设置就可以根据不同目录对不 同用户的访问授权进行控制了。 阅读全文
posted @ 2013-12-13 15:15 梦在旅途 阅读(724) 评论(0) 推荐(0) 编辑
摘要:NVelocity常用语法指令 默认情况下,NVelocity解析是不分大小写的,当然可以通过设置runtime.strict.math=true,采用严格解析模式。严格区分大小写有时候还是挺有用途的。如果在模板文件中有这样的包含文件,发布改模板的时候,就会提示#include后面没有括弧()的错误。因为在NVelocity中,有#include("abc.html")这样的指令。如果我们将include改为Include就不会报错了。对变量的引用:$ [ ! ][ { ][ a..z, A..Z ][ a..z, A..Z, 0..9, -, _ ][ } ]。 在NVelocity中,对变量的引用都是以$开头加上变量名称。当使用!时表示当此变量值为空时,显示空字符串。比如当$article为空,那会显示“$article“,而$!article会显示为“”。{}为变量名称限定,有时候变量名称后会有字符串,这是就需要用到{}了。比如$articleshow,想引用$article,这时只要修改为${articl 阅读全文
posted @ 2013-09-10 15:03 梦在旅途 阅读(691) 评论(0) 推荐(0) 编辑
摘要:Response.ContentType = "application/x-zip-compressed"; Response.AddHeader("Content-Disposition", "attachment;filename=z.zip"); string filename = Server.MapPath("DownLoad/aaa.zip"); Response.TransmitFile(filename); } 阅读全文
posted @ 2013-04-17 22:53 梦在旅途 阅读(2991) 评论(0) 推荐(0) 编辑
摘要:啥叫异步,啥叫Ajax.咱不谈啥XMLHTTPRequest.通俗讲异步就是前台页面javascript能调用后台方法.这样就达到了无刷新.所谓的Ajax.这里我们讲二种方法 方法一:(微软有自带Ajax框架) 在Asp.net里微软有自己的Ajax框架.就是在页面后台.cs文件里引入 using System.Web.Services 空间 然后定义静态方法(方法前加上 [WebMethod]) [WebMethod] public static string ABC(string ABC) { return ABC; } 好了,现在我们谈谈前台Js怎么处理后台返回的数据吧,可利用Jquery处理返回的纯html,json,Xml等数据.这里我们演示返回返回的数据有string、集合(List)、类. 但都返回Json格式 阅读全文
posted @ 2013-01-06 22:17 梦在旅途 阅读(2485) 评论(0) 推荐(0) 编辑
摘要:GetValid.aspx (可以直接将该页面作为源赋值给ImageUrl) using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; using System.Text; using System.Drawing; 阅读全文
posted @ 2012-12-20 18:51 梦在旅途 阅读(453) 评论(0) 推荐(0) 编辑
摘要:第一种方法:使用CDOSYS 第二种方法:使用LOTUS组件 阅读全文
posted @ 2012-12-08 12:03 梦在旅途 阅读(698) 评论(0) 推荐(0) 编辑
摘要:asp.net里导出excel表方法汇总 public void ToExcel(System.Web.UI.Control ctl) { HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename=Excel.xls"); HttpContext.Current.Response.Charset ="UTF-8"; HttpContext.Current.Response.ContentEncoding =System.Text.Encoding.Default; HttpContext.Current.Response.ContentType ="application/ms-excel";//image/JPEG;text/HTML;image/GIF;vnd.ms-excel/msword ctl.Page.EnableViewState =false; System.IO.Stri 阅读全文
posted @ 2012-12-08 11:52 梦在旅途 阅读(702) 评论(1) 推荐(1) 编辑