• .Net面试题


    .Net面试题

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

    答:

    private:私有的,只能在类的内部才可以访问。

    protected:保护成员,只能在类的内部和被继承的类中可以访问。

    publie:公共的,任何人都可以访问,没有访问限制。

    internal:在同一命名空间下可以访问。

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

    答:

    委托可以把一个方法当作参数代入到另一个方法。

    委托像C++里面的函数指针,但是相比函数指针它是安全的。

    是,事件是一种特殊的委托。(事件不是委托,不过由于事件的性质决定了处理它的程序逻辑能访问的参数,因此,在C#中处理事件的逻辑都包装为 委托。)

    3.什么是索引,有什么优点?

    答:

    索引象书的目录类似,索引使数据库程序无需扫描整个表,就可以在其中找到所需要的数据,索引包含了一个表中包含值的列表,其中包含了各个值的行所存储的位置,索引可以是单个或一组列,索引提供的表中数据的逻辑位置,合理划分索引能够大大提高数据库性能。

    4.WebService

    答:

    webservice即Web服务,它是一种跨编辑语言和跨操作系统平台的远程调用技术。(适用于不同系统之间的交互,数据传递)

    5.MVC与WebApi的区别

    答:

    MVC主要用于建栈。

    WebApi主要用于构建Http服务。

    6.为什么,.Net Core可以跨频台?

    答:

    在.NetCore时代,IIS发生了巨大的变化。这个变化就是IIS只利用其中的ASPNetCoreModule模块转发HTTP请求,而所有的请求处理和响应,都是在Kestrel这个内置服务器中完成的。

    而Kestrel服务器是跟随我们程序一起打包的。我们的程序,在Linux或mac平台上有专门的运行时,所有我们的程序都能在其他的平台上面运行。

    7.什么是存储过程?有什么优点?

    答:

    存储过程是一组予编译的SQL语句

    它的优点:

    1.允许模块化程序设计,就是说只需要创建一次过程,以后在程序中就可以调用该过程任意次。

    2.允许更快执行,如果某操作需要执行大量SQL语句或重复执行,存储过程比SQL语句执行的要快。

    3.减少网络流量,例如一个需要数百行的SQL代码的操作有一条执行语句完成,不需要在网络中发送数百行代码。    

    4.更好的安全机制,对于没有权限执行存储过程的用户,也可授权他们执行存储过程。

    8.概述序列化

    答:

    就是把对象转化成规定的字符串(Xml、Json)。

    序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。

    9.什么是事务?

    答:

    事务是指一个工作单元,它包含了一组数据操作命令,并且所有的命令作为一个整体一起向系统提交或撤消请求操作,即这组命令要么都执行,要么都不执行。

     10.JavaScript的模板?

    答:

    Vue、Angular、Js、React、Jquery。

    11.new 关键字用法

    答:

    (1)new 运算符 用于创建对象和调用构造函数。

    (2)new 修饰符 用于向基类成员隐藏继承成员。

    (3)new 约束 用于在泛型声明中约束可能用作类型参数的参数的类型。

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

    答.

    1使用QueryString,如.…?id=1;response.Redirect()..…
    2.使用Session变量
    3.使用Server.Transfer
    4.使用Application
    5.使用Cache
    6使用HttpContext的Item属性
    7.使用文件
    8.使用数据库
    9.使用Cookie

    13.WebApi有几种返回值给前台

    答:

    void无返回值、IHttpActionResult、HttpResponseMessage、自定义类型

    14.EF的开发模式到底有几种

    答:

    即:DateBase First(数据库优先)、Model First(模型优先)和Code First(代码优先)。
    当然,如果把Code First模式的两种具体方式独立出来,那就是四种了。
    Code First(New DataBase):在代码中定义类和映射关系并通过mode生成数据库,使用迁移技术更新数据库。
    Code First(Existing DataBase):在代码中定义类和映射关系,给逆向工程提供工具。
    Model First:在设计器中创建Model,并用Model生成数据库。所有的类由Model自动生成。
    DateBase First:在设计器中逆向生成Model,并有Model自动生成所有的类。

    15.什么是跨域,怎么解决?

    答:

    跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器施加的安全限制。

    解决办法有1、JSONP:2、代理:3、PHP端修改header(XHR2方式)

    关于跨域想深入了解可以:https://blog.csdn.net/lambert310/article/details/51683775

    16.MVC有几种缓存?

    答:

    1、Control缓存

    2、Action缓存

    3、使用配置文件进行缓存配置

    4、缓存依赖

    地址:https://www.cnblogs.com/xiaomowang/p/6626712.html

    17.MVC的几种传值方式

    答:

    1.ViewData

    2.ViewBag

    3.TempData

    4.Model

  • 相关阅读:
    C#位操作符
    NGEN 本机映像生成器 【转载】
    Azure Services Platform
    补补算术基础:编程中的进制问题
    泛型约束
    去除Live Messenger 中的广告
    对代码性能进行调试和量测
    几个常用的文档转换工具(Office System)
    LINQ to DataSet
    使用 Entity Framework 實現彈性的資料模型 【转载】
  • 原文地址:https://www.cnblogs.com/mvpbest/p/13266314.html
Copyright © 2020-2023  润新知