互联网面试——.Net 面试题

提供了最常见的 .Net 面试问题和许多公司提出的答案。让我们看看顶级 Dot Net 面试问题列表。

1. 什么是.NET?

.NET 是一种软件开发框架。它就像其他软件开发框架(J2EE)一样。它以类库和 API 的形式提供运行时功能和一组丰富的预构建功能。此 .NET 框架是构建、部署和运行 Web 服务和其他应用程序的环境。

.NET 框架包含三个主要部分:

  • 公共语言运行时
  • 框架类
  • ASP.NET

2. .NET 目前支持多少种语言?

.NET第一次引入时,支持VB.NET、C#、COBOL、Perl等多种语言,目前支持近44种语言。

3. .NET 怎么可能支持多种语言?

.NET 语言代码被编译为 Microsoft 中间语言 (MSIL)。生成的代码称为托管代码。此托管代码在 .NET 环境中运行。所以编译后语言不是障碍,代码也可以调用或使用另一种语言的功能。

4. ASP.NET 与 ASP 不同吗?如果是,解释如何?

是的,ASP.NET 与 ASP 不同。

这些是主要区别:

  • ASP.NET 由 Microsoft 开发以创建动态 Web 应用程序,而 ASP(Active Server Pages)是 Microsoft 用于创建网页的服务器端技术。
  • ASP.NET 是在解释 ASP 的同时编译的。
  • ASP 使用名为 ADO 的技术,而 ASP.NET 使用 ADO.NET。
  • ASP.NET 是完全面向对象的,而 ASP 是部分面向对象的。

5. ASP.NET 中的状态管理是什么?

状态管理是一种用于根据不同请求管理对象状态的技术。在任何 Web 应用程序中管理状态都非常重要。

ASP.NET 中有两种类型的状态管理系统。

  • 客户端状态管理
  • 服务器端状态管理

6. 跟踪和调试有什么区别?

Debug 类用于调试构建,而 Trace 用于调试和发布构建。

7. system.stringbuilder 和 system.string 有什么区别?

system.stringbuilder 和 system.string 之间的主要区别是:

  • system.stringbuilder 是可变的,而 system.string 是不可变的。
  • Append 关键字在 system.stringbuilder 中使用,但不在 system.string 中使用。

8. int 和 int32 有什么区别?

int 和 int32 之间没有区别。系统中 Int 是 System.Int32 的别名,它是一个 .Net 类。

9. 命名空间和程序集有什么区别?

程序集是逻辑单元的物理分组,而命名空间对类进行分组。一个命名空间可以跨越多个程序集。

10. 解释值类型和引用类型的区别。

以下是值类型和引用类型之间的主要区别:

  • 值类型包含变量,而引用类型不直接在其内存中包含值。
  • 在引用类型中,内存分配在托管堆中,值类型内存分配在堆栈中。
  • 引用类型 ex-class value type-struct, enumeration

11. 会话对象和应用程序对象有什么区别?

会话对象用于维护每个用户的会话。
例如:如果用户进入应用程序,那么他将获得一个会话 ID。如果他离开应用程序,则会话 ID 将被删除。如果他再次进入应用程序,他将获得不同的会话 ID。
但是在应用程序对象的情况下,为整个应用程序维护 id。

12. .Net 编程语言中的函数和存储过程有什么区别?

函数和存储过程的区别:

  • 函数只返回一个值,而过程可以返回一个或多个值。
  • 函数可以在select 语句中使用,但不能使用procedure。
  • 函数只有输入参数,而过程可以有输入和输出参数。
  • 异常可以通过过程中的 try catch 块处理,但在函数中是不可能的。

13. Window Authentication 如何获取用户名?

系统.环境.用户名

14. 哈希表和数组列表有什么区别?

哈希表以值对和名称的形式存储数据,而数组列表仅存储值。
您需要通过名称来访问哈希表中的值,而在数组中,您需要传递索引号来访问值。
在Array中,您只能存储相似类型的数据类型,而在Hash table中,您可以存储不同类型的数据类型。前任。整数,字符串等。

15. 不可变是什么意思?

不可变意味着一旦你创建了一个东西,你就不能修改它。
例如:如果您想为旧值赋予新值,那么它将丢弃旧值并在内存中创建新实例以保存新值。

16. 使用session有什么好处?

使用会话的优点是:

  • 会话将用户状态和数据存储到整个应用程序中。
  • 它很容易实现,我们可以存储任何类型的对象。
  • 它可以单独存储每个用户数据。
  • 会话对用户是安全和透明的,因为会话对象存储在服务器上。

17. 使用 session 有什么缺点?

使用 session 的缺点是:

  • 在大量用户的情况下会出现性能开销,因为 session 数据存储在服务器内存中。
  • 涉及序列化和反序列化会话数据的开销,因为在 StateServer 和 SQLServer 会话模式的情况下,我们需要在存储之前序列化对象。

18. 您可以手动设置会话结束时间吗?

是的。可以在 web.config 中手动设置会话超时时间。

19. 解释.Net 中的装箱和拆箱概念?

  • 装箱:装箱是将值类型转换为引用类型的过程。
  • 拆箱:拆箱是将引用类型转换为值类型的过程。

20. 是否可以更改表上主键的索引?

不可以。

21. 什么是 HTTPhandler?

HttpHandler 是一个低级请求和响应 API,用于为传入的 Http 请求提供服务。 ASP.NET 收到的每个传入 Http 请求最终都由实现 HttpHandler 的类的实例处理。

22. 什么是 .NET Framework,它的主要组件是什么?

.NET Framework 便于开发人员开发、运行和部署控制台应用程序、窗口窗体应用程序、Web 应用程序、Web 服务、窗口服务等应用程序。
它还提供了创建可用于分布式计算架构的可共享组件的环境。

.Net Framework 的主要组件:

  • 类库
  • 公共语言运行时 (CLR)
  • 动态语言运行时 (DLR)
  • 应用程序域
  • 运行时主机
  • 跨语言互操作性
  • 框架安全
  • 分析等。

23. .NET Framework 中的清单是什么?

清单用于存储程序集元数据。它包含以下内容所需的所有元数据。

  • 程序集版本
  • 安全标识
  • 程序集范围
  • 解析对资源和类的引用

24. 什么是内存映射文件?

内存映射文件用于将文件内容映射到应用程序的逻辑地址。它使您能够在同一台机器上运行多个进程以相互共享数据。要获得内存映射文件对象,您可以使用 MemoryMappedFile.CreateFromFiles() 方法。它代表来自磁盘文件的持久内存映射文件。

25. .NET 中使用哪种方法强制执行垃圾回收?

System.GC.Collect() 方法。

26. dispose() 和 finalize() 有什么区别?

尽管 CLR 使用 Dispose 和 Finalize 这两种方法来执行 .NET 应用程序的运行时对象的垃圾收集,但它们之间还是有区别的。
Finalize 方法由运行时自动调用,而 Dispose 方法由程序员调用。

27. 解释 .NET 框架中的代码访问安全 (CAS)。

.NET 安全模型用于防止对资源和操作的未授权访问,并限制代码执行特定任务。代码访问安全性是 .NET 安全性的一部分。

28. 什么是垃圾回收?

垃圾收集用于防止程序执行期间的内存泄漏。有一个低优先级进程名称,因为垃圾收集器管理应用程序的内存分配和释放。它还检查未引用的变量和对象。如果应用程序不再使用任何对象,则垃圾收集器将从该对象中释放内存。

29. 如何确定页面已回传?

有一个属性,名为“IsPostBack”属性。您可以检查它以了解该页面是否已回发。

30. .NET 编程语言中的变量和常量是什么?

变量:变量是计算机内存中的数据存储位置,它包含一个值并具有一个有意义的名称。每个变量都附加到一个数据类型,该数据类型决定了可以在变量中存储什么类型的值。
可以使用以下语法声明变量:

<data_type>  <variable_name>;  

常量:常量也类似于变量,只是值不同。分配给常量的值无法更改。
常量必须在声明的同时初始化。
可以使用以下语法声明常量:

    const int interestRate =10;  

31. 如果要替换代码中的多个 if-else 语句,您会使用哪个语句?

在 Visual basic 中,我们可以使用 Select-Case 语句来替换多个 If-Else 语句。在 C# 中,我们应该使用 Switch-Case 语句来替换多个 If-Else 语句。

32. .Net 中有哪些不同类型的索引?

.Net 中有两种类型的索引:

聚集索引和非聚集索引

33. .Net 中有多少种内存类型?

.Net中有两种类型的内存

  • Stack memory
  • Heap Memory

34. .NET Framework 4.0 中添加了哪些新功能?

.NET Framework 4.0 的新功能列表:

  • 改进的应用程序兼容性和部署支持
  • 动态语言运行时
  • 托管扩展性框架
  • 并行编程框架
  • 改进的安全模型
  • 网络改进
  • ASP.NET 服务改进
  • WPF 4 中的改进
  • 改进的实体框架 (EF)
  • WCF 和 WF 之间的集成

35. 什么是cookies?

cookie 是服务器在客户端创建的少量数据。当 Web 服务器创建 cookie 时,会在向浏览器提供页面时向浏览器发送一个额外的 HTTP 标头。

36. cookies 的缺点是什么?

cookies 的主要缺点是:

  • Cookie 只能存储字符串值。
  • Cookie 取决于浏览器。
  • Cookie 并不安全。
  • Cookie 只能存储少量数据。

37. 什么是 IL?

IL 代表中级语言。它也被称为 MSIL(微软中间语言)或 CIL(通用中间语言)。
所有 .NET 源代码首先被编译为 IL。然后,IL 在安装软件时或在运行时由 Just-In-Time (JIT) 编译器转换为机器代码。
互联网面试——.Net 面试题_第1张图片

38. .NET 中使用哪种方法强制执行垃圾回收?

System.GC.Collect() 方法用于在 .Net 中强制执行垃圾收集。

39. .Net 中的元组是什么?

元组是一个固定大小的集合,可以包含相同或不同数据类型的元素。用户必须在声明时指定元组的大小,就像数组一样。

40. 一个元组可以容纳多少个元素?

一个元组可以容纳 1 到 8 个元素。如果元素超过 8 个,则可以将第 8 个元素定义为另一个元组。元组可以指定为方法的参数或返回类型。

41. 数据集遵循哪种架构?

数据集遵循断开连接的数据架构。

42. 如何检查 DataReader 是关闭还是打开?

有一个名为“IsClosed”的属性用于检查 DataReader 是关闭还是打开。如果数据读取器关闭,则此属性返回真值,否则返回假值。

43. 连接池的基本要求是什么?

连接池必须满足以下两个要求:

  • 必须有多个进程共享描述相同参数和安全设置的同一个连接。
  • 连接字符串必须相同。

44. 应该使用哪个适配器从 Access 数据库中获取数据?

OleDbDataAdapter 用于从 Access 数据库中获取数据。

45. 控制大多数连接池行为的参数是什么?

以下参数控制连接池行为:

  • Connect Timeout
  • Max Pool Size
  • Min Pool Size
  • Pooling

46. AutoPostBack 是什么意思?

AutoPostBack 是一个属性,用于在引发事件时自动回发。您必须将控件的 AutoPostBack 属性设置为 True。

47. 哪些属性用于绑定 DataGridView 控件?

DataSource 属性和 DataMember 属性用于绑定 DataGridView 控件。

互联网面试——.Net 面试题_第2张图片

你可能感兴趣的:(.net,面试,互联网)