由Codebehind所引发的
ASP.NET的页面模型有2种:
#1,single-file-page(单文件 Web 窗体页)
说明:
1,不能直接在 Visual Studio 中创建单文件 Web 窗体页。当创建新页时,Visual Studio 会在默认情况下创建单独的 .aspx 文件和类文件。若要创建单文件页,必须在一开始就将其创建为文本文件,然后将其扩展名更改为 .aspx。
2,不能通过从工具箱中拖动将非可视组件(如数据组件)添加到该页上,因为 Web 窗体设计器不会在该页中持久保存这些组件。相反,应使用代码添加这种组件。
3,在 HTML 视图中而不是在代码编辑器中编写代码。
4,当您编写代码时,Intellisense 将受不到支持,您得不到语法检查或语句结束、制表位设置或代码格式设置等功能。
5,必须手动将事件绑定到事件处理程序。对于单文件 Web 窗体页,Visual Studio 不支持通过双击为控件的默认事件创建处理程序,也不支持代码编辑器中类和事件的下拉列表。
6,不支持某些调试功能,例如不能够通过将鼠标指向一个变量值来查看该变量值。
7,由于不会将该页中的代码编译成项目程序集,所以在运行该页之前不会捕获编译时错误
#2,Codebehind(代码后置)
分2种情况:使用Codebehind和Src属性(或者预先编译与自动编译)
1,<%@ Page Codebehind="webform1.aspx.cs" Inherits="myweb.webform1" %>
Codebehind只是说明本页面说继承的类(myweb.webform1)可以在webform1.aspx.cs文件中查找,只是设计器(VS)告诉用户一个参考信息,所以在页面运行时候不执行(当然这个语句与没写完全一样)。如果不预先编译,出现错误:
======
分析器错误
说明: 在分析向此请求提供服务所需资源时出错。请检查下列特定分析错误详细信息并适当地修改源文件。
分析器错误信息: 未能加载类型“Test.WebForm1”。
源错误:
行 1: <%@ Page Codebehind="webform1.aspx.cs" Inherits="myweb.webform1" %>
======
解决办法:把相应的.aspx.cs文件编译成为dll放入bin文件夹,或者使用Src.
2,<%@ Page Src="webform1.aspx.cs" Inherits="myweb.webform1" %>
Src很明了,说明一个代码的路径,页面运行会自动连接到后置代码,自动编译。
根据大家自己的喜好与需求,以及结合可维护性,安全性等各方面的因素,选择3者之一。
http://blog.csdn.net/anwell/archive/2005/02/25/301686.aspx
转载于:https://www.cnblogs.com/godwar/archive/2008/02/29/1085677.html
由Codebehind所引发的相关推荐
- silverlight Image Source URI : 一个反斜杠引发的血案
silverlight Image Source URI : 一个反斜杠引发的血案 Silverlight2 现在支持的Image格式有jpg和png,部分png编码也不支持,同时有些png在xaml ...
- /var/lib/docker/overlay2/xxxxx no such file or directory docker文件删除引发的问题
记一次误删引发的服务雪崩 K8s node节点磁盘报警,报警后我找到服务中占用磁盘最多的地方,在overlay2目录下,对下面的文件进行了删除 删除后,有状态服务先出现了问题,服务无法启动.停止. ...
- 由Node.js事件驱动模型引发的思考
引言 近段时间听说了Node.js,很多文章表述这个事件驱动模型多么多么优秀,应用在服务器开发中有很大的优势,本身对此十分感性去,决定深入了解一下,由此也引发了一些对程序设计的思考,记录下来. 什么是 ...
- vs2003复制一个web窗体,没有更改指向同一个cs 文件,引发大问题
今天我在原来的考试系统的出题模块中,input模块,因为增加的一个web窗体编译有问题,于是就复制了原来的启动项页面input,再改了名字为set1,然后在set1页面上删除了控件和代码,再把set1 ...
- mongodb java 日志分析_记一次log4j与mongodb集成引发的问题分析
问题背景 对项目中的关键应用调用链日志需要结构化得统一吐出到mongodb中,同时项目中日志输出使用log4j,故准备使用log4j的Appender直接集成mongodb的输出,同时mongodb采 ...
- bug诞生记——const_cast引发只读数据区域写违例
对于C++这种强类型的语言,明确的类型既带来了执行的高效,又让错误的发生提前到编译期.所以像const这类体现设计者意图的关键字,可以隐性的透露给我们它描述的对象的使用边界.它是我们的朋友,我们要学会 ...
- linux中非法内存,Linux下数组非法访问导致内存破坏 —— 引发segmentation fault的原因...
2012-02-05 wcdj 1, 调试时必需的栈知识 2, 数组非法访问导致内存破坏 调试时必需的栈知识 栈(stack)是程序存放数据的内存区域之一,其特征是LIFO(Last In First ...
- Opencv4测试报错00007FFB3253A9C0 (ntdll.dll)处引发的异常: 0xC0000005: 读取位置 0x0000000000000010 时发生访问冲突
报错信息如下: 0x00007FFB3253A9C0 (ntdll.dll)处(位于 test1.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000000000000010 时发 ...
- Sql Server 因为触发器问题导致数据库更新报错“在触发器执行过程中引发了错误,批处理已中止”的问题处理...
在维护一个非常旧的项目时,由于该项目版本已经非常老了,而且在客户现场运行的非常稳定,更要命的是本人目前没有找到该项目的代码,为了处理一个新的需求而且还不能修改程序代码,于是决定从数据库入手,毕竟该项目 ...
最新文章
- 提高IIS网站服务器的效率的八种方法 (转载)
- 人工智能专业太卷,发不出好文章?看看顶刊审稿人怎么说...
- Redis 安装详细过程(redis基本使用(服务端和客户端)、修改密码)
- java实现多路分发
- 阿里云加速构建技术平台,推动5G消息产业发展
- Linux C 数据结构——二叉树
- Cytoscape可视化物种分类树结构
- Android Studio项目目录结构介绍
- 学习 shell —— 参数的解析:$0/1/2、$#、 $@、$?(set -e)
- SQL Server数据库复制
- 应用Dubbo框架打造仿猫眼项目 理解微服务核心思想
- 计算机桌面调音量的图标不见了,电脑调节音量的小喇叭不见了?教你3招,轻松解决!...
- 如何正确获取支付宝网页支付的APPID、私钥、支付宝公钥
- 手机可以连上wifi,电脑连不上怎么办?
- python cv2 截取视频指定帧图片
- 进入微信企业项目授权回跳之后退出项目需要点击两次(手机的返回主键,回退键)才能正常退出的问题解决
- ScrollView和GestureDetector触屏事件冲突
- OpenWrt 系列教程汇总
- eval()函数的使用
- 2010破局,联想笔记本用AMD芯