`
风火山林
  • 浏览: 140593 次
  • 性别: Icon_minigender_1
  • 来自: 汕尾
最近访客 更多访客>>
社区版块
存档分类
最新评论

asp.net 知识补充

阅读更多

1.解释性语言与编译性语言:

asp为解释性语言,边解释边执行(由jscript活vbscript解释成中间语言之后再执行),asp.net为编译性语言,直接编译成机器码执行。

2.四种参数形式的区别:

传值参数:也就是普通参数,不改变变量的内存地址

引用参数:ref,显示定义参数,调用之前必须初始化,改变内存地址

输出参数:out,显示定义参数,调用之前只需声明,不必初始化,改变内存地址,可返回多个返回值

数组参数:params,显示定义参数,调用时可以直接赋值与参数而不必声明数组。

3.ado与ado.net

ado基于ole db接口和com

ado.net基于asp.net接口和.net体系

优势在于,离线连接数据库断开connection之后仍然可以保留数据集

强类型转换

xml支持

不再支持动态游标

不依赖com

4.new

创建对象或者调用构造函数

隐藏基类成员的继承成员

约束泛型中的参数类型

5.string str=null 和 string str=""

null是没有,没有分配内存空间

""是空,一个空的字符串

6.datagrid的datasource能够连接哪些数据源

datatable

dataview

dataset

dataviewmanage

任何实现IListSource接口的组件

任何实现IList接口的组件

7.反射与序列化

反射:解析出一个程序集(对象等)的所有信息

序列化:把对象转化为其他格式输出(如文本转化为xml),恢复对象格式则用反序列化

8.访问权限修饰符

public:可以跨类跨程序集访问

protected:只有派生类能访问基类中以protected声明的成员

interal:同一个程序集才可以访问,而且只能访问类,不能访问类成员

private:只能在同一个类的里面访问,如果不同类中想调用此类private成员的话,需要开放public方法才行。

9.密封类修饰符sealed

修饰之后此类不能派生类。

10.ado.net的主要对象

connection

command

dataadapt

datareader

dataset

trans

11.struct与class的异同

同:都是可以实现接口的,成员的类型相同。

异:struct是值类型的,值存储在堆栈或“内联”内的,不可以被继承的。没有构造,析构函数,没有protected,sealed,abtract,不初始化实例,不用new。

class是引用类型的,值存储在堆里面,其他的与上面相反。

12.remoting与webservice

remoting可以传变量的引用,效率高,但要求客户端和服务器都必须是.net环境,可以自定义协议传输,用于远程调用

webservice必须传变量的值,效率低,但可以跨平台,必须要用soap协议传输,用于消息传输的

13.三层架构

用户表现层(UI):用户界面显示

业务逻辑层(BLL):具体问题的操作和解决,业务逻辑的处理

数据业务层(DAL):数据的访问,包括insert,update,delete,select等。

优点:实现高内聚,低耦合

         因为是向下依赖的,上层的改变不会影响到下层,所以程序员只需关心就该层就行了。

         有利于标准化

         实现代码的复用

缺点:降低性能,很多可以直接操作的业务需要通过中间层了操作。

         增加了代码量。

14.三层架构与MVC异同

同:都有表现层

异:“三层”没有明确定义control,其modle是指业务逻辑层和数据访问层。

15.xml的技术及应用

保存配置

站与站之间交流

webservice

16.委托

委托可以把方法作为参数传递

相当于指针

用于定义回调函数

17.soap

简单对象访问协议,基于xml,用于分布式系统环境中交换信息和远程调用的协议。

18.sleep()和waite()

sleep()是延时后能自动恢复运行

waite()延时后必须有notify()唤醒才能运行

19.静态和非静态

1.定义不同,静态是类定义,非静态是对象定义,所以定义要先于非静态,且静态类里面只能定义静态变量和方法,但非静 态类可以定义静态方法和变量。

2.内存分配方式不同,静态时只占一份内存,页面运行时只加载一次,而非静态的类每次创建实例化对象都要增加一份内存,每次运行都要加载。

3.生命周期不同,静态是类的生命周期,且自己不能释放,所以要慎用。

4.什么时候使用静态,当其使用频率高,改动少的时候可以使用静态(如连接数据库时)。

20.seo理解

seo是搜索引擎优化,分为站内seo,站外seo,白帽seo和黑帽seo

seo优化公式:SEO=∫Clock=∫C1+L2+K3+O4

c是content:丰富的,吸引用户的文章等,非桥页。

l是链接:反向链接(站外seo,从其他网站中提供的链接),合作网站等有丰富的链接,和内容有较好的匹配性,链接到好的站点。

K是关键词:title,description,keywords.密度合理。不能堆砌,隐藏。
体验公式:SEO=用户体验+蜘蛛体验

21.值类型与引用类型的内存分配:

值类型的内存分配,分配在栈()中的变量之中,可以随意复制和替代,假如是两个变量的话,这两个变量运算结束之后就无关系了。

引用类型,对象在栈中是以地址的形式存储的,实例化对象之后,实例放于堆中,指针从栈中指向堆中。赋值的操作,入x=y的假设x已经实例化,那么x复制了一个地址给y,并指向同一个实例。

22.数据库连接字符串的理解

sa登录:constr="server=(local);database=northwild;uid=sa;pwd=sa"

windows登录:constr="server=(local);database=northwild;integrated security=sspi;persist security=false;connect timeout=300"

integrated security=sspi/true 或者 trusted_connection=false 表示使用windows登录;

persist security=false表示不保存密码信息;

23.装箱和拆箱

装箱:值类型转化为引用类型或者值类型所实现的任何接口的隐式转化。系统资源消耗大,因为要多要分配实例及指针。

拆箱:引用类型转化为值类型或从接口类型到值类型的显示转化。系统资源消耗较小,因为它只是返回实例指向的内存地址。

24.CLR(公共语言运行时)

负责内存分配和垃圾收集,受其监视的代码成为托管代码,反之则为非托管代码。

25.堆和栈(堆栈指的是栈):

   栈是系统提供的功能,特点是快速高效,缺点是有限制,数据不灵活;而堆是函数库提供的功能,特点是灵活方便,数据适应面广泛,但是效率有一定降低。

     栈是系统数据结构,对于进程/线程是唯一的;堆是函数库内部数据结构,不一定唯一,不同堆分配的内存无法互相操作。

     栈空间分静态分配和动态分配两种。静态分配是编译器完成的,比如自动变量(auto)的分配。动态分配由alloc函数完成。栈的动态分配无需释放 (是自动的),也就没有释放函数。为可移植的程序起见,栈的动态分配操作是不被鼓励的!堆空间的分配总是动态的,虽然程序结束时所有的数据空间都会被释放 回系统,但是精确的申请内存/释放内存匹配是良好程序的基本要素。

26.lambda表达式的理解:

“Lambda 表达式”是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式目录树类型。
   所有 Lambda 表达式都使用 Lambda 运算符 =>,该运算符读为“goes to”。该 Lambda 运算符的左边是输入参数(如果有),右边包含表达式或语句块。Lambda 表达式 x => x * x 读作“x goes to x times x”。可以将此表达式分配给委托类型,如下所示:

  delegate int del(int i);

  del myDelegate = x => x * x;

  int j = myDelegate(5); //j = 25

  创建表达式目录树类型:

  using System.Linq.Expressions;

  // ...

  Expression<del> = x => x * x;

  => 运算符具有与赋值运算符 (=) 相同的优先级,并且是右结合运算符。

  Lambda 用在基于方法的 LINQ 查询中,作为诸如 Where 和 Where 等标准查询运算符方法的参数。

27.委托的理解: 

相当于函数指针,定义了委托就可以在不调用原方法名称的情况下调用那个方法

用delegate定义

28.聚集索引和非聚集索引的区别和使用

聚集索引是物理索引,查询速度快,修改速度慢,适用于返回的结果集多,列中不同值少,返回一个区间的值

非聚集索引是逻辑索引,适用与上面相反加上order by 使用了该列。

29.OS的两种调度策略

1.抢先式调度策略:中断当前作业,把cpu交给其他作业

2.非抢先式策略

30.进程的四种调用方式

1.消息传递

2.同步

3.共享内存区域

3.过程调用

31.asp.net的运行机制

 

 当一个请求从浏览器发出,到达服务器端,IIS收到该请求。IIS根据所请求资源的扩展名,将该请求转交给相应的ISAPI扩展程序来处理。那扩展名为.aspx的请求是怎么样的呢?同样也是由相应的ISAPI处理该请求,也就是aspnet_isapi.dll,但这只是第一站,aspnet_isapi 还要将该请求转交给ASP.NET来处理.

IIS运行在一个InetInfo.exe的进程中,IIS收到扩展名为.aspx请求后,加载ASP.NET ISAPI---"aspnet_isapi.dll",ASP.NET ISAPI 会启动一个名为"aspnet_wp.exe"的工作进程,“aspnet_wp.exe”启动时会加载CLR、创建appDomain,在创建对appDomain时会实例化一个名为ISAPIRuntime类,ISAPIRuntime是Asp.net与asp.net ISAPI通信的桥梁。IIS与ASP.NET ISAPI都是非托管程序,而ASP.NET  HttpRuntime则是一个托管程序,ASP.NET ISAPI 通过COM的方式与ASP.NET Http Runtime基于命名管道通信。ISAPIRuntime是一个特殊的类,它实现接口IISAPIRuntime,该接口基于COM。所以说非托管程序可以以COM的方式访问。


ASP.NET ISAPI 调用 ISAPIRumtime  ProcessRequest 方法的,这时就到了托管环境的天下,到ASP.NET发挥的时候了,个个“洗刷”工具开始启动。

 ISAPIRuntime将处理权转交给HttpRumtime的ProcessRequestInternal方法 

32.Ajax的运行机制

1.使用CSS和XHTML来表示。
   2. 使用DOM模型来交互和动态显示。
   3.使用XMLHttpRequest来和服务器进行异步通信。
   4.使用javascript来绑定和调用。

分享到:
评论

相关推荐

    asp.net知识库

    ASP.NET 2.0 正式版中无刷新页面的开发(示例代码的补充) ASP.NET2.0中themes、Skins轻松实现网站换肤! ASP.NET 2.0 中的代码隐藏和编译 ASP.NET 2.0 Language Swithcer and Theme Swicher 多语言转换和多样式主题...

    史上最好传智播客就业班.net培训教程60G 不下会后悔

    让学员明白“请求—处理—响应模型”、“Http协议、Http无状态”、“c#代码渲染生成浏览器端JavaScript”、“ViewState的作用”、“Session的原理”等这些基本而又重要的原理,从而扫清后面ASP.Net知识学习的基础性...

    ACCP 6.0 ASP.NET ch03

    ACCP 6.0 ASP.NET ch03 ppt+ 课件 +补充知识

    ASP.NET网页设计与网站开发

    要包括3大部分内容,第1部分是基础型实验...第3部分介绍常见应用实例解析,其中融入了很多设计技巧,补充了教材中没有涉及而在实际设计中又经常使用的技术,并给出了详细的设计步骤,适合于在掌握教材知识的基础上希望

    ASP.NET操作数据库

    ASP.NET操作数据库,通过对ADO.NET 的基本讲解,以及讲解了一些数据源控件的基本用法后,本章将介绍一些ASP.NET 操作数据库的高级用法,包括使用SQLHelper,以及数据源控件对数据的操作。本章是对前面的数据库 知识...

    accp 6.0 ASP.NET ch02

    accp 6.0 ASP.NET ch02 ppt + 代码+ 补充的知识

    asp.net mvc实例源代码 

    asp.net mvc实例源代码 ,mvc 的出现已有一段时间了,有时间需要补充一下这方面的知识。

    构建安全的 ASP.NET 应用程序(中文译作+英文原作)

    构建安全的 Microsoft® ASP.NET 应用程序:前言 更新日期: 2004年04月20日 本指南的目标 本指南不是介绍安全性,也不是 Microsoft .NET Framework 的安全性参考材料;如果您要了解这方面的内容,请查看 MSDN 中的...

    仿百度知道问答(Ask)系统 2010 v1.0 试用版.rar

    运行环境: ASP.net Access 数据库 授权方式: 免费软件  软件大小: 2.33M(压缩后的) 相关链接: http://www.soupet.net 演示地址: http://ask.soupet.net 系统技术支持平台:http://ask.soupet.net 安装...

    vuejs-aspnetcore-ssr:ASP.NET Core 2及更高版本上的VueJS 2.5服务器端渲染

    该存储库的目的是按照我的经验添加更多步骤和评论,以使它们可以作为原始博客文章的补充。 我个人对VueJS或现代Web开发框架都没有任何先验知识。 我是C#开发人员,通过VueJS文档和Stu Ratcliffe博客文章自己学习...

    ASP.NET MVC+EF框架+EasyUI实现权限管系列

    因为这篇博客比较简单,只是建立一个简单的架构,所以我顺便进行一下MVC的知识补充,后面我也会这样穿插着介绍项目中遇到的技术,下面开始今天之旅。 1.自动属性  (1)自动属性(Auto-Implemented Properties),C#...

    客户关系管理课件 由浅到深

    (2)本教程为金旭亮所著之《ASP.NET 程序设计教程》(高等教育出版社 预计2009 年2 月出版)的补充 资料,其目的是为学习“ASP.NET 开发技术”的学生打好必要的基础,扫清学习的障碍。 (2)本教程主要内容抽取自...

    基于web的企业人事管理系统毕业论文

    NET 技术,ASP.NET 采用“Code—Behind”方式编写代码使得代码易于编写,结构清晰,降低了系统开发与维护的复杂度.通过结合实际应用,在需求分析的基础上,系统分为了人事管理模块和人事呈现模块,人事管理模块也就是...

    仿百度知道问答(Ask)系统 2010 Net+Access v1.0版

    运行环境: ASP.net + Access 数据库 授权方式: 正式软件  软件大小: 3M 相关链接: http://www.soupet.net 演示地址: http://ask.soupet.net 系统技术支持平台:http://ask.soupet.net 超级管理员后台: ...

    仿百度知道问答(Ask)系统 v1.0.rar

     宠物爱问致力于打造最高水平的问答应用程序,宠物爱问(ask)2010吸收了以前各版本的应用经验,采用asp.net2.0技术重写代码,在运行效率和安全性方面都有质的提高,同时,我们针对已往客户的反馈意见,增加了诸多...

    2007版本GoAsk勤网爱问系统(免费版)

    ASP.net 2.0 SQL Server 2000数据库相关链接: http://www.rungoo.cn演示地址: http://iask.rungoo.cn(后台:http://iask.rungoo.cn/admin/login.aspx)帐号:admin 密码:123456系统技术支持平台:...

    Elencar:Projeto desenvolvido para Academia 11 Avanade-Gama Academymy

    Primeiramente,我是代言人的装备三通:Weslley Andrade,énosso主要参与者,C#e ASP.net的后端服务; Rair Angelos,ETL代理,Python e前端开发com JavaScript,HTML e CSS; 伊夫林·卡塔琳(Evelyn Katarine)...

    VS2008 LINQ基础教程

    一步一步学Linq to sql(一):预备知识 4 一步一步学Linq to sql(二):DataContext与实体 9 一步一步学Linq to sql(三):增删改 15 一步一步学Linq to sql(四):查询句法 21 一步一步学Linq to sql(五):...

    Java语言原理与技术(原创书稿:RAR文件之一)

    写书都要有序,所以为序。 &lt;br&gt;为什么要写这本书,吃力不讨好啊!...此处所提供的电子版本为PDF格式 &lt;br&gt;相关代码下载地址请访问:http://www.njmars.net/dispbbs.asp?boardID=4&ID=407&page=1

Global site tag (gtag.js) - Google Analytics