自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(100)
  • 收藏
  • 关注

原创 说出一些数据库优化方面的经验

a.扩展:索引内部原理可以想象成 Dictionary,插入、删除、更新的速度慢了,加上索引也多占用了空间,查询的速度快了。加上索引以后速度提升非常明显。b.在经常检索的字段上(selectfromPerson whereName=@Name)使用索引提高查询速度。 (2)select 中只 列出必要的字段,而不是。c.避免隐式类型转换造成的全表扫描,在索引上使用函数也会造成全表扫描(因 为索引只是为字段建立的,一旦使用表达式或者函数,那么索引就是失效了,当然也可以使用“函数索引”、 “表 达式索引”解

2021-01-14 09:04:25 114

原创 说一下SQLServer中索引的两种类型

a.聚簇(或者叫做聚集,cluster)索引和非聚簇索引。b.字典的拼音目录就是聚簇(cluster)索引,笔画目录就是非聚簇索引。这样查询“G到M的汉字”就非常快,而查询“6划到8划的字”则慢。聚簇索引是一种特殊索引,它使数据按照索引的排序顺序存放表中。聚簇索引类似于字典,即所有词条在字典中都以字母顺序排列。聚簇索引实际上重组了表中的数据,所以你只能在表中建立一个聚簇索引。当数据按值的范围查询时,聚簇索引就显得特别有用。因为所有SQLServer都必需先找到所查询范围的第一行,然后依次下去,直到该范围的

2021-01-14 09:03:49 278

原创 编写一个单例(Singleton)类

a.把构造函数设置为 private,设置一个 public、static 的对象实例b.public FileManager {private FileManager(){}public static FileManager Instance=new FileManager();}

2021-01-14 09:03:04 92

原创 有一个8个数的数组{1,2,3,3,4,5,6,6},计算其中不重复数字的个数

int values = {1,2,3,3,4,5,6,6};HashSet<int> set = new HashSet<int>();foreach(int i in values){set.Add(i);}Console.WriteLine(set.Count)

2021-01-14 09:02:10 128

原创 请编程遍历WinForm页面上所有TextBox控件并给它赋值为string.Empty

foreach (System.Windows.Forms.Control control in this.Controls) { if (control is System.Windows.Forms.TextBox) { System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control ; tb.Text = String.Empty ; } }`在这里插入代码片`

2021-01-14 09:01:41 326

原创 如何把一个 Array复制到ArrayList里

a.string[]s={ “111”,“22222”};ArrayList list=newArrayList(); list.AddRange(s);b.string[]s={ “111”,“22222”};ArrayList list=newArrayList(s);

2021-01-14 09:01:08 89

原创 如果程序连不上 SQLServer 数据库服务器,你会怎么排除这个故障

a.首先ping一下服务器 IP,看是否能够ping通,如果不能ping通,则看是否网络有问题b.;如果能 ping 通,再 telnet 一下服务器的 1433 端口,看是否能够连通c.如果不能连通则可 能是 SQLServer 服务停掉了或者是服务器上的防火墙封掉了 1433 端口如果能连通再检查是不是 本地程序的问题、驱动的问题...

2021-01-14 09:00:32 269

原创 你对webservice的体会

a.如果自己写的一些程序也希望别人可以通过 Web 服务来使用,也可以把自己编写的方 法贴上标签[WebMethed]来实现 Web 服务。b.是当编写程序时,希望实现一些别的网站已经 实现过的,也用 Web 服务可视成 XML 语言的编码。c.可以使用别人的编码生成的 XML 找到 自己需要的信息,来实现自己编写的程序的一些功能。d.扩展了解:SOAP、WSDL...

2021-01-14 08:59:42 42

原创 你会采用什么样的策略和方法来实现系统缓存

a.在ASP.NET中缓存有页面缓存,数据源缓存,和一些自己定义的缓存b.对于那些整个页面不经常变化的我们可以使用页面缓存,而对于那些执行非常耗时的SQL语句并且数据的及时性要求不高的我们可以使用数据源缓存对于页面缓存、数据源缓存等都不满足要求的情况下采用直接操作HttpRuntime.Cache来自定义缓存策略。如果需要用多台Web服务器作为一个集群来承载网站的情况,则可以部署专门的分布式缓存服务器,比如Memcached、Redis...

2021-01-14 08:59:20 56

原创 说出一些常用的类、接口,请各举5个

a.常用的类:StreamReader、WebClient、Dictionary<K,V>、StringBuilder、SqlConnection、 FileStream、File、Regex、Listb.常用的接口:IDisposable、IEnumerable、IDbConnection、IComparable、ICollection、IList、IDictionary

2021-01-14 08:58:32 114 1

原创 119..Net中会存在内存泄漏吗?请简单描述

a.所谓内存泄露就是指一个不再被程序使用的对象或变量一直被占据在内存中b.Net中有垃圾回收机制,它可以保证一对象不再被引用的时候,即对象编程了孤儿的时候,对象将自动被垃圾回收器从内存中清除掉。c.虽然.Net可以回收无用的对象,但是.Net仍然存在由于使用不当导致的内存泄露问题。d.Net中的内存泄露的情况:长生命周期的对象持有短生命周期对象的引用就很可能发生内存泄露,尽管短生命周期对象已经不再需要,但是因为长生命周期对象持有它的引用而导致不能被回收,这就是.Net中内存泄露的发生场景e.通俗地说

2021-01-13 08:38:04 658

原创 使用MVC有哪些好处

a.分离了关注点。后台代码被移到单独的类文件,我们可以最大限度的重复利用代码自动化UI测试成为可能,因为后台代码移到了.NET类。这让我们更容易做单元测试和自动化测试

2021-01-13 08:37:33 147

原创 MVC同时适用于Windows应用和Web应用吗

a.相比Windows应用,MVC架构更适用于Web应用b.对于Windows应用,MVP(Model View Presenter)架构更好一点如果你使用WPF和Silverlight,MVVM更适合

2021-01-13 08:36:06 55

原创 MVC有多少种不同类型的结果类型,请详细描述

a.有12种,最主要的是ActionResult类,它是一个基础类,它有11个子类型b.ViewResult - 给响应流渲染指定的视图c.PartialViewResult - 给响应流渲染指定的局部视图d.EmptyResult - 返回空的响应结果e.RedirectResult - 执行一个HTTP转向到指定的URLf.RedirectToRouteResult -执行一个HTTP转向到一个URL,这个URL由基于路由数据的路由引擎来决定g.JsonResult - 序列化一

2021-01-13 08:35:26 66

原创 MVC中如何做输入验证

a.在M层使用数据模型的属性标签形如[Required]b.在C层使用ModelState.IsValid属性检查数据是否正确,也可在C层使用JavaScript进行数据验证

2021-01-13 08:34:56 63

原创 在MVC中如何保持Sessions

a.可使用tempdata、viewdata、viewbag三种方式b.tempdata:在不同的控制器或动作间转换时保持数据。另外,进行页面转向时,tempdata可以保持数据,它是一个内部的Session变量c.Viewdata:可以在控制器和视图间保持数据d.Viewbag:它是视图数据的动态包装,使用viewbag不需要类型转换,它使用的是内部动态关键词...

2021-01-13 08:34:01 57

原创 如何防范SQL注入式攻击

a.利用表单输入的内容构造SQL命令之前,把所有输入内容过滤一番就可以了。过滤输入内容可以按多种方式进行。b.对于动态构造SQL查询的场合,可以使用下面的技术c.用存储过程来执行所有的查询。SQL参数的传递方式将防止攻击者利用单引号和连字符实施攻击。此外,它还使得数据库权限可以限制到只允许特定的存储过程执行,所有的用户输入必须遵从被调用的存储过程的安全上下文,这样就很难再发生注入式攻击了d.限制表单或查询字符串输入的长度。如果用户的登录名字最多只有10个字符,那么不要认可表单中输入的10个以上的字符,

2021-01-13 08:33:26 86

原创 Asp.net中的错误机制

a.定制错误页来将显示一个友好的报错页面。b.页面中未捕获一样会触发Page_Error,应用程序中的未捕获异常会触发Application_Error。通过HttpContext.Current.Server.GetLastError()拿到未捕捉异常,记录到Log4Net日志中。...

2021-01-13 08:29:49 59

原创 通过超链接怎样传递中文参数

a.用 URL 编码b.通过 QueryString 传递用 urlencode 编码,用 urldecode 解码

2021-01-13 08:29:14 96

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

a.使用 QueryString, 如…?id=1;response.Redirect()…b.使用 Session 变量c.使用 Server.Transferd.Cookie 传值e.Application 传值f.PreviosPageg.Server.Transfer 和 Response.Redirect 的区别:Server.Transfer 是服务器内部的转接,浏览器不知晓; Response.Redirect 是有浏览器参与的,所以在地址栏中可以看到地址的变化。h.扩展:Se

2021-01-13 08:28:42 52

原创 什么是 WEB 服务控件?使用 WEB 服务控件有那些优势、劣势

a.web 服务控件就是可以在服务器执行的控件,优势在于可以回传数据(ViewState),带有事件驱 动(doPostBack),简化了 Html 标签的使用,使得开发 ASP.net 程序可以像开发 Winform 程序一 样简单。Web 服务控件最终还是被渲染(Render)为 Html 标签b.使用 WEB 服务控件的劣势是会生 成一些无用的属性、ViewState 等,不利于 SEO,一般在内网系统或者互联网系统的后台中使用 WEB 服务控件。如果没有复杂的服务器交互动作,就不用 Web 服务器

2021-01-12 09:00:15 191

原创 B/S与C/S的联系与区别

a.C/S 是 Client/Server 的缩写。客户端需要安装专用的客户端软件。B/S是 Brower/Server 的缩写,客户机上只要安装一个浏览器。在这种结构下,用户界面 完全通过 WWW 浏览器实现,一部分事务逻辑在前端实现,但是主要逻辑在服务器端 实现。浏览器通过WebServer 同数据库进行数据交互...

2021-01-12 08:59:42 57

原创 什么是反射

a.程序集包含模块,而模块又包括类型,类型下有成员,反射就是管理程序集,模块,类型的对象b.它能够动态 的创建类型的实例c.设置现有对象的类型或者获取现有对象的类型d.能调用类型的方法和访问类型的字段属性。 它是在运行时创建和使用类型实例...

2021-01-12 08:59:09 72

原创 override与重载(overload)的区别

a.重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要。b.重载(overload)是面向过程的概念。c.Override 是进行基类中函数的重写d.Override 是面向对象的概念

2021-01-12 08:58:36 100

原创 C#中的委托是什么?事件是不是一种委托?事件和委托的关系

a.委托可以把一个方法作为参数代入另一个方法。b.委托可以理解为指向一个函数的指针c.委托和事件没有可比性,因为委托是类型,事件是对象

2021-01-12 08:58:02 105

原创 您在什么情况下会用到虚方法?它与接口有什么不同

a.子类重新定义父类的某一个方法时,必须把父类的方法定义为 virtual在定义接口中不能有方法体,虚方法可以。实现时,子类可以不重新定义虚方法,但如果一个类继承接口,那必须实现这个接口...

2021-01-12 08:57:26 81

原创 在.net中类(class)与结构 (struct)的异同

a.Class可以被实例化,属于引用类型,是分配在内存的堆上的。类是引用传递的b.Struct 属于值类型,是分配在内存的栈上的。结构体是复制传递的。加分的回答:Int32、Boolean 等都属于结构体。

2021-01-12 08:56:52 221

原创 http常见状态码有哪些?

a.2开头状态码;2xx (成功)表示成功处理了请求的状态代码;如:200 (成功) 服务器已成功处理了请求。b.3开头状态码;3xx (重定向) 表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。如:304 (未修改) 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容c.4开头状态码;4xx(请求错误) 这些状态代码表示请求可能出错,妨碍了服务器的处理;如:400 (错误请求) 服务器不理解请求的语法;403 (禁止) 服务器拒绝请求。404 (未找到) 服务器

2021-01-12 08:56:08 76

原创 是否可以从一个 static方法内部发出对非 static方法的调用

a.不可以b.因为非 static 方法是要与对象关联在一起的,必须创建一个对象后,才可以在该对象上进行方 法调用,而 static 方法调用时不需要创建对象,可以直接调用也就是说,当一个 static 方法被调用时,可能还没有创建任何实例对象,如果从一个 static 方法中发出对非 static 方法的调用,那个非 static 方法是关 联到哪个对象上的呢?这个逻辑无法成立,所以,一个 static 方法内部不能发出对非 static 方法的调用...

2021-01-11 08:27:48 45

原创 GC是什么?为什么要有 GC

a.GC是垃圾收集器。程序员不用担心内存管理,因为垃圾收集器会自动进行管理。b.GC只能处理托管内存资源的释放,对于非托管资源则不能使用 GC 进行回收,必须由程序员手工回收,一个例子就是 FileStream 或者 SqlConnection 需要程序员调用 Dispose 进行资源的回收。c.要请求垃圾收集,可以调用下面的方法:GC.Collection()一般不需要手动调用 GC.Collection()。加分的回答:有 一次用 OLEAutomation 的方式操作 Excel 的时候,Exc

2021-01-11 08:27:14 263

原创 using键字有什么用?什么是IDisposable

a.using 可以声明 namespace 的引入,还可以实现非托管资源的释放,实现了 IDisposiable 的类在 using 中创建b.using 结束后会自动调用该对象的 Dispose 方法,释放资源。c.加分的补充回答:using 其实等价于 try……finally, 用起来更方便72.GC是什么?为什么要有 GC?...

2021-01-11 08:23:57 52

原创 不是说字符串是不可变的吗?string s=“abc“;s=“123“ s=“abc“;s=“123“不就是变了吗

a.String 是不可变的在这段代码中,s 原先指向一个 String 对象,内容是 “abc”,然后我们将 s 指向"123",那么 s 所指向的那个对象是否发生了改变呢?答案是没有b.这时,s 不指向原来那个对象了,而指向了另一个 String 对象,内容为"123",原来那个对象还存在于内存之中,只是 s 这个引用变量不再指向它了。...

2021-01-11 08:23:25 63

原创 什么是强类型,什么是弱类型?哪种更好些?为什么

a.C#中int i=3; i=“a”;不可以。JavaScript中 var i=3; i=3; i=“a”;可以。b.强类型是在编译的时候就确定类型的数据,在执行时类型不能更改,而弱类型在执行的时候才会确定类型。c.没有好不好,二者各有好处,强类型安全,因为它事先已经确定好了,而且效率高。弱类型更灵活,但是效率低,而且出错概率高一般用于编译型编程语言,如 c++,java,c#,pascal 等,弱类型相比而言不安全,在运行的时候容易出现错误,但它灵活,多用于解释型编程语言,如 javascrip

2021-01-11 08:22:53 68

原创 堆和栈的区别

a.栈是编译期间就分配好的内存空间,因此你的代码中必须就栈的大小有明确的定义;局部值类型变量、值类型 参数等都在栈内存中。b.堆是程序运行期间动态分配的内存空间,你可以根据程序的运行情况确定要分配的堆内存的大小。...

2021-01-11 08:22:20 55

原创 DataReader和DataSet的异同

a. DataReader 使用时始终占用 SqlConnection,在线操作数据库 每次只在内存中加载一条数据,所以占用的内存是很小的 是只进的、 只读的b. DataSet 则是将数据一次性加载在内存中.抛弃数据库连接…读取完毕即放弃数据库连接(非连 接模式)c. DataSet 将数据全部加载在内存中.所以比较消耗内存…但是确比 DataReader 要灵活…可以动 态的添加行,列,数据.对数据库进行 回传更新操作(动态操作读入到内存的数据)58.属性和public 字段的区别是什么?调用 s

2021-01-11 08:21:56 64

原创 跨域解决方案有哪些?

a.方案一原理:动态创建一个script标签。利用script标签的src属性不受同源策略限制。因为所有的src属性和href属性都不受同源策略限制。可以请求第三方服务器数据内容;步骤1:去创建一个script标签步骤2: 接口参数,必须要带一个自定义函数名 要不然后台无法返回数据步骤3:通过定义函数名去接收后台返回数据如图:b.方案二原理:CORS跨域资源共享(服务器设置Access-Control-Allow-OriginHTTP响应头之后,浏览器将会允许跨域请求;限制:浏览器需要支持HTM

2021-01-11 08:21:18 41

原创 AJAX都有哪些优点和缺点

优点:a.最大的一点是页面无刷新,用户的体验非常好b.使用异步方式与服务器通信,具有更加迅速的响应能力。c.可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。d.基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。缺点:e.ajax不支持浏览器back按钮。f.安全问题 AJAX暴露了与服务器交互的细节。g.对

2021-01-09 15:45:06 81

原创 web storage和cookie的区别

a.Cookie的大小是受限的b.每次你请求一个新的页面的时候Cookie都会被发送过去,这样无形中浪费了带宽c.cookie还需要指定作用域,不可以跨域调用d.Web Storage拥有setItem,getItem等方法,cookie需要前端开发者自己封装setCookie,getCookiee.Cookie的作用是与服务器进行交互,作为HTTP规范的一部分而存在 ,而Web Storage仅仅是为了在本地“存储”数据而生f.IE7、IE6中的UserData通过简单的代码封装可以统一到所有的

2021-01-09 15:44:26 31

原创 你使用过哪些数据格式,它们各有什么特点?

a.HTML格式,JSON格式,javascript格式,XML格式b.HTML片段提供外部数据一般来说是最简单的c.如果数据需要重用,而且其他应用程序也可能一次受到影响,那么在性能和文件大小方面具有优势的JSON通常是不错的选择d.当远程应用程序未知时,XML则能够为良好的互操作性提供最可靠的保证...

2021-01-09 15:43:56 64

原创 jQuery 能做什么?

a.获取页面的元素b.修改页面的外观c.改变页面大的内容d.响应用户的页面操作e.为页面添加动态效果f.无需刷新页面,即可以从服务器获取信息g.简化常见的javascript任务

2021-01-09 15:43:22 31

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除