在Asp.Net MVC中定义Action时,要获取页面提交的参数,我们可以在方法内直接通过Request.QuestString或者Request.Form接收,也可以定义在形参中,尤为方便的是,我们甚至可以在形参中定义自定义类型(Model),不需要再 自己去new一个对象,然后判断是否存在数据,再一个一个的对属性进行赋值,极大的简化了广大码民的开发工作! 此功能其实看似很神奇,其实实现原理是很简单的。大叔在这里就给大家讲一下,如何实现这样的功能!
JNTemplate 基础入门教程,2分钟快速学会如何使用JNtemplate模板引擎来做开发!
其实对于动态网页来说,就是一个文本的处理的处理过程:当用户向服务器请求一个链接,IIS(此处不讨论其它WEB服务器)根据求请地址(后缀)将其交给特定的ISAPI处理,ISAPI接收后,经过一系列判断处理,然后获得实际的模板路径(WebForm中就是aspx页面),然后将开发人员在页面中定义的服务器标记(或者说是标签,WebForm中还包括控件等)替换(解释)成指定的数据后,生成一段包含HTML标记的纯文本返回给用户,所以,理论上只要可以处理文本的编程语言,就可以用来开发Web项目.比如JavasScript(Node.js)!
IL(Intermediate Language)是.NET框架中中间语言的缩写,本文介绍常用的一些IL指令,以备查询使用
写了两篇关于IL指令相关的文章,分别把值类型与引用类型在 堆与栈上的操作区别详细的写了一遍 这第三篇也是最后一篇,之所以到第三篇就结束了,是因为以我现在的层次,能理解到的都写完了,而且个人认为,重要的地方都差不多 写到了, 最后一篇决定把之前的内容全部整合起做一个综合的例子,然后简单的解释下IL指令的含义,及在内存中的变化
知识点回顾: Managed Heap(托管堆):用于存放引用类型的值 Evaluation Statck(评估栈):临时存放值类型数据,引用类型地址的堆栈(这个是栈,所以遵循栈的操作特点,先进后出) Call Stack(局部变量列表):,用于存放.locals init(int32 V_0)指令的参数值如:V_0 (不要被Call Stack 这个名字所误导了,它并不是一个栈)
世上有个定律叫“二八定律” ,80%的功能,只要用20%的技术就可以完成,但要完成另外20%可能就需要80%技术了,对于IL代码也是如此,有200多个指令,我们只需要用到其20%的指令就可以解决我们80%的问题了,所以我不会写太多,只是让大家能看懂普通的程序代码编译成IL代码后就行了,还有就是要多看,IL代码的每一条指令都是特定的意思,看得多了自然就懂了,当对自己代码有疑问时尝试看看它对应的IL代码,也许你会了解得更多。
在使用模板引擎的过程中,总需要设置一些通用/常用的数据或方法,本来讲解JNTemplate的高级配置方法之通用数据设置
最近在做Asp.Net WebForm时,用户提交表单后,要判断如果是用户手动点击按钮(Button,此处的button是指asp.net中的服务器控件asp:button,下同)提交,要清除某个状态,如果是程序(javascript或者其它,此处JS提交不包括JS模拟按钮点击提交,下同)自动提交,则不做理会,而且此问题涉及到多个页面,而且每个页面按钮不同!如果按常规方法,手动在每个Button的Click事件中添加相关代码太过烦琐,而且以后如果一个新程序员来维护该项目时,很容易造成添加了一个新按钮,却未添加或调用相关方法的问题!
当文件比较大时,下载可能需要历时数小时,万一线路中断,我们不得不重新开始,而断点续传可以让用户从上次断开的地方接着下载,但是断点续传功能不仅仅需要客户端的支持,也需要服务端的支持,本文演示如何让asp.net支持断点下载!