.net 基础知识
mikemiller2
这个作者很懒,什么都没留下…
展开
-
C#堆和栈的区别
理解堆与栈对于理解.NET中的内存管理、垃圾回收、错误和异常、调试与日志有很大的帮助。垃圾回收的机制使程序员从复杂的内存管理中解脱出来,虽然绝大多数的C#程序并不需要程序员手动管理内存,但这并不代表程序员就无需了解分配的对象是如何被回收的,在一些特殊的场合仍需要程序员手动进行内存管理。在32位的处理器上,每个进程的虚拟内存为4GB,.NET会在这4GB的内存块中开辟出3块内存,分别作为栈、托管堆、转载 2014-03-14 10:39:39 · 594 阅读 · 0 评论 -
Singleton设计模式的C#实现
Singleton模式 Singleton(译为单件或单态)模式是设计模式中比较简单而常用的模式。 有些时候在整个应用程序中,会要求某个类有且只有一个实例,这个时候可以采用Singleton模式进行设计。用Singleton模式设计的类不仅能保证在应用中只有一个实例,而且提供了一种非全局变量的方法进行全局访问,称为全局访问点,这样对于没有全局变量概念的纯面向对象语言来说转载 2015-07-07 23:56:21 · 382 阅读 · 0 评论 -
.net 高频面试题
1、 a=10,b=15,请在不使用第三方变量的情况下,把a、b的值互换 答:小学算法,加法交换律和加法结合律int a=a+b; int b=a-b;int a=a-b; 2、session喜欢丢值且占内存,Cookis不安全,请问用什么办法代替这两种原始的方法 答:redis 或者 memcache。当然,微软也提供了解决方案。iis中由于有进程回收机制,系统繁忙的话Sess转载 2015-07-01 17:03:04 · 493 阅读 · 0 评论 -
.net 反射 作用
1.程序运行时,动态获取某个特定DLL中的类型信息,动态生成类型,实例化类型对象,调用对象方法,获得对象属性。可以不用添加程序集dll的引用到工程项目中。这就使得一些事先设计好的dll可以以装配件的形式,被宿主程序调用。 2.比如有一个猫类: public class Cat { public int Age { get; set;转载 2015-07-01 15:07:55 · 778 阅读 · 0 评论 -
ASP.NET ViewState详解
ViewState是一个被误解很深的动物了。我希望通过此文章来澄清人们对ViewState的一些错误认识。为了达到这个目的,我决定从头到尾详细的描述一下整个ViewState的工作机制,其中我会同时用一些例子说明我文章中的观点,结论。比如我会用静态控件(declared controls)和动态控件(dynamic controls)两个方面来说明同一个问题。现在有关ViewState的文章可转载 2015-06-23 16:04:58 · 661 阅读 · 0 评论 -
应用程序域
应用程序域 使用.Net建立的可执行程序*.exe,并没有直接承载到进程当中,而是承载到应用程序域(AppDomain)当中。应用程序域是.Net引入的一个新概念,它比进程所占用的资源要少,可以被看做是一个轻量级的进程。一个应用程序域可以有多个线程,一个线程也可以穿梭于多个应用程序域。 在一个进程中可以包含多个应用程序域,一个应用程序域可以装在一个可执行程序(*.exe)或者多个程转载 2015-06-23 09:07:18 · 475 阅读 · 0 评论 -
Understanding ASP.NET View State
Understanding ASP.NET View State Scott Mitchell4GuysFromRolla.comMay 2004Applies to: Microsoft® ASP.NET Microsoft® Visual Studio® .NETSummary: Scott Mitchell looks at the benefits转载 2015-06-23 15:59:32 · 913 阅读 · 0 评论 -
ASP.NET Get和Post两种提交方法浅析
表单form的提交有两种方式,一种是get的方法,一种是post 的方法.看下面代码,理解ASP.NET Get和Post两种提交的区别:代码如下: 姓名字 你的网站 学习request 和 response的用法转载 2015-05-07 23:37:46 · 455 阅读 · 0 评论 -
虚函数的作用
虚函数的作用在于运行的时候能够正确的识别调用函数的对象是那个类的,然后正确的调用对应的函数如果对象是基类的对象,调用的就是基类的函数,如果对象是派生类的,就调用派生类的同名函数class Base {public: virtual void fun() { puts("Base::fun()"); }};转载 2015-05-05 22:45:07 · 356 阅读 · 0 评论 -
.NET中yield关键字的用法
yield在迭代器块中用于向枚举数对象提供值或发出迭代结束信号。它的形式为下列之一:yield return ;yield break; 计算表达式并以枚举数对象值的形式返回;expression 必须可以隐式转换为迭代器的 yield 类型。yield 语句只能出现在 iterator 块中,该块可用作方法、运算符或访问器的体。这类方法、运算符或访问器的体受以下约束的转载 2015-04-30 10:42:28 · 888 阅读 · 0 评论 -
WCF 应用
Hi,回答WCF能做什么的问题,首先知道WCF是什么,这样才能更好理解。WCF全称Windows Communication Foundation,是Microsoft为构建面向服务的应用提供的分布式通信编程框架,是.NET Framework 3.5的重要组成部分。使用该框架,开发人员可以构建跨平台、安全、可靠和支持事务处理的企业级互联应用解决方案。根据微软官方的解释,WCF(之前的转载 2014-12-06 08:48:40 · 392 阅读 · 0 评论 -
.NET PDB文件到底是什么?
PDB全称Program Database,不知道中文翻译叫什么。相信使用过VS的人对于这个拓展名的文件不会陌生,这个文件主要会存储对应模块(dll或者exe)内部的所有符号,以及符号对应的地址、文件名和行号。这个文件会在我们调试的时候被使用到,这个东西可以理解为调试的时候应用程序和源文件之间的一个桥梁。正是归功于这个文件,我们才能在debug的时候看到程序当前执行相对应的代码和监视到一些变量转载 2014-03-14 17:26:55 · 666 阅读 · 0 评论 -
C#核心概念--装箱和拆箱(什么是装箱和拆箱)
装箱(boxing)和拆箱(unboxing)是C#类型系统的核心概念.是不同于C与C++的新概念!,通过装箱和拆箱操作,能够在值类型和引用类型中架起一做桥梁.换言之,可以轻松的实现值类型与引用类型的互相转换,装箱和拆箱能够统一考察系统,任何类型的值最终都可以按照对象进行处理. C#语言中的所有类型都是由基类System.Object继承过来的,包括最常用的基础类型:int, byte,转载 2014-03-14 09:54:18 · 593 阅读 · 0 评论 -
asp.net 程序 Respons.redirect("XXXXXX")无法跳转
问题描述: 系统登录时的login方法中设置Session后,Respons.redirect("XXXXXX")无法跳转。原因:Web.config文件中、 当mode设置成StateServer时,须要开启系统服务ASP.net State Service。看了一下MSDN,我的理解是这项服务来管理 Session 的,正常来说转载 2017-12-01 16:43:20 · 713 阅读 · 0 评论