当前位置 博文首页 > Asp.net基础知识扫盲篇

    Asp.net基础知识扫盲篇

    作者:admin 时间:2021-08-15 17:44

    asp.net基础知识篇-中文扫盲篇

    1、.NET是什么?

    .Net全称.NET Framework是一个开发和运行环境,

    该战略是微软的一项全新创意,

    它将使得“互联网行业进入一个更先进的阶段,

    .NET不是一种编程语言. 简单说就是一组类库框架,

    .NET开发支持C#、VB.NET、J#、Jsript和Managed C++等。

    C#是.NET Framework框架支持的一种主力开发语言,

    可用于开发ASP.NET网站, Windows 程序,控制台程序,甚至于手机软件

    2、ASP.NET、.NET和C#的关系是怎样的?

    .NET 分成两个方面:

    (1)WinForm

    (2)WebForm

    ASP.NET就是属于WebForm,也就是平时说的B/S模式的开发。

    而WinForm就是属于C/S模式。

    .NET有很多种语言组成,比如C#、 VB.NET、J#、Jsript、Managed C++

    但是都是运行在.NET FrameWork Run Time底下的。

    Asp.NET 可以用C#或VB.NET来开发。

    编译后形成CLR,通过服务器的IIS+.NET FrameWork再次编译来运行。

    C#是开发语言.

    总之,ASP.NET是.NET Framework环境下的动态网页编程技术,

    .NET Framework是.NET的基础框架,

    Visual Studio.NET是用于开发软件的一个集成环境(IDE)。

    当然后续出来了Windows Phone/WPF等。

    3、.NET开发是用什么语言?

    .NET声称支持市面上20多种语言,

    但目前只有微软官方发布的C#,VB.NET,J#, Jsript和Managed C++

    Tips:C#是主流哦。

    4、为什么大部分用C#语言开发.NET?

    C#是Microsoft公司设计的一种编程语言,

    C#(读做‘Csharp')。它基于C/C++,是面向对象的。

    没有指针,有垃圾回收机制,会自动释放内存空间。

    学习C#并不必须有C语言的基础,不过,如果你学过C语言,

    那会事半功倍的,因为他们之间有很多语法是一样的。

    C#支持的基本类型和C++很相似,包括int, long,

    float, double, char, string, arrays, structs和 classes等。

    5、ASP.NET环境的安装

    (1)、其实现在一般的电脑都可以安装,至于操作系统目前

    .NET支持的平台有Windows,至于Linux和Unix的支持正在开发中.

    (2)、运行环境下载,因为是向下兼容,所以可以下载最新的Framework框架

    .NET Framework 3.5下载地址:

    https://www.microsoft.com/zh-cn/download/details.aspx?id=21

    .NET Framework 4.0下载地址:

    https://www.microsoft.com/zh-cn/download/details.aspx?id=17718

    .NET Framework 4.5下载地址:

    https://www.microsoft.com/zh-cn/download/details.aspx?id=30653

    .NET Framework 4.6.2下载地址:

    https://www.microsoft.com/zh-cn/download/details.aspx?id=53345

    (3)、安装过程

    首选安装MDAC,再安装SDK,SDK的安装时间比较长要耐心等待。

    (4)、试运行

    安装完成后,试着运行一个简单的ASP.NET编写的小程序,以便确定安装是否成功。

    6、Bin文件夹下的DLL可以做什么?

    (1)它是自动生成的,不用自己添加。

    (2)作用:bin文件夹中包含项目中所用到的所有引用的类库,支持服务器等内容DLL的全称是Dynamic Link Library, 中文叫做“动态链接文件”。

    7、.NET主要的优点有哪些?

    .NET的主要优点有跨语言,跨平台,安全,以及对开放互联网标准和协议的支持.

    .NET支持多种语言的互操作,即在一种语言下开发的组件,

    可在另一组件下通过面向对象的继承而得以重用.

    .NET通过将各语言先编译成中间语言(IL),

    然后再执行时用即时(Just In Time)编译器将之编译成本地平台代码来实现异构平台下对象的互操作,

    .NET通过公共语言运行库CLR(Common Language Runtime)来实现资源对象,类型的安全.

    .NET通过对HTTP,XML等Internet标准的支持提供在异构网络环境下获取远程服务,

    连接远程设备,交互远程应用的编程界面

    8、ASP.NET和ASP的区别?

    ASP.NET和ASP的最大区别在于编程思维的转换以及功能的增强。

    ASP使用VB/JS这样的弱类型、面向结构的脚本语言混合html来编程,

    而非面向对象,这就明显产生以下几个问题:

    1、代码逻辑混乱,难于管理。

    2、代码的可重用性差:由于是面向结构的编程方式,并且混合html,

    所以可能页面原型修改一点,整个程序都需要修改,代码重用性差。

    3、弱类型造成潜在的出错可能。

    以上是ASP语言本身的弱点,在功能方面ASP同样存在问题:

    第一是功能太弱,一些底层操作只能通过组件来完成

    第二缺乏完善的纠错/调试功能

    ASP.NET理论上可以使用任何编程语言包括C#,VB.NET、JS、、J#、Managed C++等等,

    最合适的编程语言还是MS为.NET Frmaework专门推出的C#

    优点如下:

    (1)是面向对象的编程语言,简单易学。

    (2)具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,

    封装性使得代码逻辑清晰,并且应用到ASP.NET上就可以使业务逻辑和Html页面分离;

    继承性和多态性使得代码的可重用性大大提高

    (3)C#还提供了完善的调试/纠错体系。

    9、做项目时数据库类型的选择?

    当前流行的数据库有:Sql server,MySql,Oracle,DB2。

    VS项目中大多是选择以下四种:

    Sql2000简单实用,功能完全够学习时使用,可通过命令行快速打开;

    Sql2005功能全面,但安装麻烦,体积大,刚打开数据库的时候比较慢,启动之后就快了许多;

    Sql2008新出的数据库,功能肯定比前两者强大,建议使用Sql2005的用户升级 到Sql2008;

    ACCESS体积小、部署方便(不用启动服务等)使用方便简单.

    10、ASP.NET中经常使用的控件有哪些?

    Label控件用来显示文本的控件。Label控件不能接收鼠标或是键盘输入。

    TextBox控件来显示和更新任务数据,用户输入内容。

    Button按钮控件当用户单击或者点击一个按钮时,即会触发Click事件

    ListBox和ComboBox控件外观不同,但功能极为相似,允许用户进行选择,不允许输入文本。

    11、.net开发工具都有哪些?

    现在主流是Visual Studio 2012/2013/2014/2015,

    VS提供了下列几个版本:标准版、专业版、Tools for Office 和 Team System 版。

    还有C# builder只应用于大型企业开发,

    支持一些微软的vs.net都不支持的企业级功能。

    还有一款免费的开发工具web matrix,这款自动感知能力弱到几乎没有,

    适合开发页面和代码不分开的那种页面,可以提高独立写代码的水平。

    不过他带有.net类库浏览器,以及一个数据库开发的控件,也算是有些特点。

    入门初学者VS.NET会很容易上手,

    当然,还有就是高手只用记事本咯!

    12、为什么.NET程序第一次运行比较慢?

    aspx页面在运行时,第一次访问时要进行编译。

    当你再次运行时,由于缓存机制,速度就会正常了。

    13、C#的命名规范

    主要有Pascal和Camel两种

    Pascal:单词的首字母大写,如ProductType;

    Camel:首个单词的首字母小写,其余单词的首字母大写,如productType)

    以下是一些常用的C#成员及其推荐命名方法:

    类class:Pascal

    枚举类型enum:Pascal记住,是以Pascal命名,切勿包含Enum

    委托delegate:Pascal以Pascal命名,不以任何特殊字符串区别于类名、函数名

    接口interface:Pascal注:总是以"I"前缀开始,后接Pascal命名

    方法function: Pascal

    命名空间namespace: Pascal比如:usingExcelQuicker.Framework

    属性:Pascal

    参数:Camel 首字母小写

    常量const: Camel 字母全部大写

    局部变量:Camel 声明变量是以str开头

    数据成员:Camel 以m开头+Pascal命名规则,如mProductType(m意味member)

    14、如何判断一个程序是否开源或者是有源文件?

    都有对应的.CS文或VB文件

    有项目文件和解决方案文件

    BIN文件下所有的dll文件或是引用的组件有对应的源码

    asp.net基础知识篇-技术问答

    1.简述 private、 protected、 public、 internal 修饰符的访问权限。

    答:private : 私有成员, 在类的内部才可以访问。
      protected : 保护成员,该类内部和继承类中可以访问。
      public : 公共成员,完全公开,没有访问限制。
      internal: 在同一程序集(命名空间)内可以访问。

    2 .列举ASP.NET 页面之间传递值的几种方式。

    答:1.使用QueryString, 如…?id=1; response. Redirect()…
      2.使用Session变量
      3.使用Server.Transfer
      4.使用Cookie
      5.使用Application

    3.C#中的委托是什么?事件是不是一种委托?

    答:委托可以把一个方法作为参数代入另一个方法。
      委托可以理解为指向一个函数的引用。
      事件是一种特殊的委托

    4.override与重载的区别

    答:重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要
        Override 是在子类对基类中函数的重写。为了适应需要。

    5.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理?

    答 : this.Server.Transfer,  Response. Redirect()—QueryString

    6.描述一下C#中索引器的实现过程,是否只能根据数字进行索引?

    答:不是。可以用任意类型。

    7.用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层?

    答:一般为3层:数据访问层,业务层,表示层。
      数据访问层对数据库进行增删查改。
      业务层一般分为二层,业务表观层实现与表示层的沟通,业务规则层实现用户密码的安全等。
      表示层为了与用户交互例如用户添加表单。
      优点: 分工明确,条理清晰,易于调试,而且具有可扩展性。
      缺点: 增加成本。

    8.什么叫应用程序域?

    答:应用程序域可以理解为一种轻量级进程。起到安全的作用。占用资源小。

    9.CTS、CLS、CLR分别作何解释?

    答:CTS是通用类型系统(Common Type System)
      CLR是公共语言运行时(Common language runtime)
      CLS是公共语言定义(Common Language Specification)

    10.什么是装箱和拆箱?

    答:从值类型接口转换到引用类型装箱。从引用类型转换到值类型拆箱。

    11.什么是受管制的代码?

    答:unsafe:非托管代码。不经过CLR运行。

    12.什么是强类型系统?

    答:RTTI:类型识别系统。

    13.net中读写数据库需要用到那些类?他们的作用?

    答:DataConnection:连接数据库
      DataSet:数据存储器。
      DataCommand:执行语句命令。
      DataAdapter:数据的集合,用于填充数据。

    14.ASP.net的身份验证方式有哪些?分别是什么原理?

    答:Windwos(默认)用IIS…From(窗体)用帐户…Passport(密钥)

    15.什么是Code-Behind技术?

    答:代码后植。

    16.在.net中,配件的意思是?

    答:程序集。(中间语言,源数据,资源,装配清单)

    17.常用的调用WebService的方法有哪些?

    答:1.使用WSDL.exe命令行工具。
      2.使用VS.NET中的Add Web Reference菜单选项

    18…net Remoting 的工作原理是什么?

    答:服务器端向客户端发送一个进程编号,一个程序域编号,以确定对象的位置。

    19.在C#中,string str = null 与 string str = “” 请尽量使用文字或图象说明其中的区别。

    答:string str = null 是不给他分配内存空间,而string str = “” 给它分配长度为空字符串的内存空间。

    20.请详述在dotnet中类(class)与结构(struct)的异同?

    答:Class可以被实例化,属于引用类型,是分配在内存的堆上的,Struct属于值类型,是分配在内存的栈上的。

    21.SQLSERVER服务器中,给定表 table1 中有两个字段 ID、LastUpdateDate,ID表示更新的事务号,LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最后更新的事务号。

    答:Select ID FROM table1 Where LastUpdateDate = (Select MAX(LastUpdateDate) FROM table1)

    22.简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。

    答:WS主要是可利用HTTP,穿透防火墙。而Remoting可以利用TCP/IP,二进制传送提高效率。

    jsjbwy
    下一篇:没有了