C# datagrid access 点击数据源时一直显示与服务器的连接已丢失,这是什么问题?

1、@page指令只能在_aspx___文件(填写扩展名)中使用,而@Control指令只能用在_ascx___文件(填写扩展名)中使用.

 5、 stringbuilder:StringBuffer线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改。虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。

6、如何理解死锁的概念?死锁是如何形成的?在应用中应注意什么事项避免死锁?

死锁是一种条件,不仅仅是在关系数据库管理系统(RDBMS)中发生,在任何多用户系统中都可以发生的。当两个用户(或会话)具有不同对象的锁,并且每个用户需要另一个对象的锁时,就会出现死锁。每个用户都等待另一个用户释放他的锁。当两个连接陷入死锁时,Microsoft? SQL Server? 会进行检测。其中一个连接被选作死锁牺牲品。该连接的事务回滚,同时应用程序收到错误。

  任何基于锁的并发系统都不可避免地具有可能在某些情况下发生阻塞的特征。当一个连接控制了一个锁,而另一个连接需要冲突的锁类型时,将发生阻塞。其结果是强制第二个连接等待,或在第一个连接上阻塞。

其实所有的死锁最深层的原因就是一个——资源竞争。

一个用户A 访问表A(锁住了表A),然后又访问表B,另一个用户B 访问表B(锁住了表B),然后企图访问表A。这时用户A由于用户B已经锁住表B,它必须等待用户B释放表B,才能继续,好了他老人家就只好老老实实在这等了。

同样用户B要等用户A释放表A才能继续这就死锁了。

这种死锁是由于你的程序的BUG产生的,除了调整你的程序的逻辑别无他法。

仔细分析你程序的逻辑:

1:尽量避免同时锁定两个资源;

2: 必须同时锁定两个资源时,要保证在任何时刻都应该按照相同的顺序来锁定资源。

用户A读一条纪录,然后修改该条纪录,这是用户B修改该条纪录,这里用户A的事务里锁的性质由共享锁企图上升到独占锁(for update),而用户B里的独占锁由于A有共享锁存在所以必须等A释放掉共享锁,而A由于B的独占锁而无法上升的独占锁也就不可能释放共享锁,于是出现了死锁。

这种死锁比较隐蔽,但其实在稍大点的项目中经常发生。

7、什么是事务? 使用事务的语句有哪些?

答:事务是一种机制,是一个操作序列,它包括了一组数据库操作命令,并且所有的命令作为一个整体向

8、在update触发器中如何使用修改前,后的数据?

9、有一职员表,字段有工卡和姓名,写出所有姓名重复的职员信息的SQL

11、请谈谈你对OOP的理解。

面向对象编程(Object OrientedProgramming,OOP,面向对象程序设计)是一种计算机编程架构。OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。OOP 主要有以下的概念和组件:

  组件-数据和功能一起在运行着的计算机程序中形成的单元,组件在 OOP 计算机程序中是模块和结构化的基础。

  抽象性-程序有能力忽略正在处理中信息的某些方面,即对信息主要方面关注的能力。

  封装-也叫做信息封装:确保组件不会以不可预期的方式改变其它组件的内部状态;只有在那些提供了内部状态改变方法的组件中,才可以访问其内部状态。每类组件都提供了一个与其它组件联系的接口,并规定了其它组件进行调用的方法。

  多态性-组件的引用和类集会涉及到其它许多不同类型的组件,而且引用组件所产生的结果得依据实际调用的类型。

继承性 - 允许在现存的组件基础上创建子类组件,这统一并增强了多态性和封装性。典型地来说就是用类来对组件进行分组,而且还可以定义新类为现存的类的扩展,这样就可以将类组织成树形或网状结构,这体现了动作的通用性。

13、 写出一条Sql语句: 取出表A中第31到第40记录(SQLServer, 以自动增长的ID作为主键, 注意:ID可能不是连续的。)
14、列举中常用的几种页面间传递参数的方法,并说出他们的优缺点。 
url参数简单,显示于地址栏,长度有限 
数据库稳定,安全,但性能相对弱
15、override与重载的区别 Override用来重写父类的方法,重载使用相同名的方法或操作符拥有不同类型的参数,重写是子类的方法覆盖父类的方法,要求方法名和参数都相同 ,重载是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同,最常见的重载的例子就是类的构造函数
16、.net的错误处理机制是什么 .net错误处理机制采用try->catch->finally结构,发生错误时,层层上抛,直到找到匹配的Catch为止。
17、C#中接口和类的异同
接口和类都是类,不同的是,接口只包含方法或属性的声明,不包含具体实现方法的代码,接口可以实现多继承,而类只能是单继承,继承接口的类必须实现接口中声明的方法或属性。接口主要定义一种规范,统一调用方法,在大型项目中接口正发挥日益重要的作用。
DataSet则是将数据一次性加载在内存中.抛弃数据库连接..读取完毕即放弃数据库连接..因为DataSet将数据全部加载在内存中.所以比较消耗内存...但是确比DataReader要灵活..可以动态的添加行,列,数据.对数据库进行回传更新操作...
19、    在c#中using和new这两个关键字有什么意义,请写出你所知道的意义? Using 引入一个名子空间,或在使用了一个对像后自动调用其IDespose,New 实例化一个对像,或修饰一个方法,表此方法完全重写此方法

20、谈谈类和结构的区别? 最大区别一个是引用类型,一个是值类型 默认成员访问为public是另外一个区别
类与结构有很多相似之处:结构可以实现接口,并且可以具有与类相同的成员类型。然而,结构在几个重要方面不同于类:结构为值类型而不是引用类型,并且结构不支持继承。结构的值存储在“在堆栈上”或“内联”。细心的程序员有时可以通过聪明地使用结构来增强性能。
39、中的用户控件 答:用户控件就是.ascx扩展名的东西喽,可以拖到不同的页面中调用,以节省代码.比如登陆可能在多个页面上有,就可以做成用户控件,但是有一个问题就是用户控件拖到不同级别的目录下后里面的图片等的相对路径会变得不准确,需要自已写方法调整.
41、什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释? 答:装箱就是把值类型转成引用类型,从MS IL角度看好像是boxing,没记错的话是把值从堆栈转到堆中.拆箱相反,重载就是指一个方法名同,参数个数不同,返回值可以相同的方法. CLR(公用语言运行时)

42、列举一下你所了解的XML技术及其应用
答:XML可是好东西,保存配置,站与站之间的交流,WEBSERVICE都要用它.
43、值类型和引用类型的区别?写出C#的样例代码。 答:结构是值类型,类是引用类型,所以传结构就是值类型的应用啦,传对象或类就是引用类型的,这个不用多写了吧.
48、UDP连接和TCP连接的异同。 答:前者只管传,不管数据到不到,无须建立连接.后者保证传输的数据准确,须要连结.
49、中读写XML的类都归属于哪些命名空间? 答:/运行时所维护的程序集仓库。共享程序集通常是对许多应用程序都有用的代码库,比如.NET Framework类。
56、 请解释进程与线程的区别?进程与程序的区别? 一般,一个应用程序对应于一个或多个进程,可以把进程看作是该应用程序在*作系统中的标识;而一个进程通常由多个线程组成,而线程是*作系统为该应用程序分配处理时间的最小单元。 
CLR:公共语言运行时,类似于Java中的JVM,Java虚拟机;在.Net环境下,各种编程语言使用一种共同的基础资源环境,这就是CLR,CLR将直接与*作系统进行通信,而编程语言如C#.NET将尽量避免直接与*作系统直接通信,加强了程序代码的执行安全性,可以这样看:CLR就是具体的编程语言如:C#.NET与*作系统之间的翻译,同时它为具体的编程语言提供了许多资源:
IL,中间语言,也称MSIL,微软中间语言,或CIL,通用中间语言;所有.NET源代码(不管用哪种语言编写)在进行编译时都被编译成IL。在应用程序运行时被即时(Just-In-Time,JIT)编译器处理成为机器码,被解释及执行。
58、请解释ASP。NET中以什么方式进行数据验证        页面一般都对应一个隐藏类,一般都在中常用的几种页面间传递参数的方法,并说出他们的优缺点。
input ttype="hidden" 简单,可能被伪造url参数简单,显示于地址栏,长度有限,数据库稳定,安全,但性能相对弱

DataSet则是将数据一次性加载在内存中.抛弃数据库连接..读取完毕即放弃数据库连接..因为DataSet将数据全部加载在内存中.所以比较消耗内存...但是确比DataReader要灵活..可以动态的添加行,列,数据.对数据库进行回传更新操作...
68、谈谈类和结构的区别? 最大区别一个是引用类型,一个是值类型默认成员访问为public是另外一个区别都要用到.
70、请简述一下用Socket进行同步通讯编程的详细步骤 1、在应用程序和远程设备中使用协议和网络地址初始化套接字
2、在应用程序中通过指定端口和地址建立监听
3、远程设备发出连接请求
4、应用程序接受连接产生通信scoket
5、应用程序和远程设备开始通讯(在通讯中应用程序将挂起直到通讯结束)
6、通讯结束,关闭应用程序和远程设备的Socket回收资源
Service是一种构建应用程序的普通模型,并能在所有支持internet网通讯的操作系统上实施。Web   Service令基于组件的开发和web的结合达到最佳,基于组件的对象模型 
75、什么叫做SQL注入,如何防止?请举例说明。
利用sql关键字对网站进行攻击。过滤关键字'等
所谓SQL注入(SQL Injection),就是利用程序员对用户输入数据的合法性检测不严或不检测的特点,故意从客户端提交特殊的代码,从而收集程序及服务器的信息,从而获取想得到的资料。

答 做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层? 
数据访问层对数据库进行增删查改。 
业务层一般分为二层,业务表观层实现与表示层的沟通,业务规则层实现用户密码的安全等。 
表示层为了与用户交互例如用户添加表单。 
优点:   分工明确,条理清晰,易于调试,而且具有可扩展性。 

85、什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?

答 远程逻辑调用,remoing接口只能用在.net中

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

109、请说出强名的含义  答垃圾回收的原理是根据是否空引用,和该数据类型占用内存来判断该收回多少内存.强类型说白就是必须要有个数据类型.

114、 请解释ASP。NET中以什么方式进行数据验证?    答   .net中提供了几个数据验证控件,可以在服务器端或者客户端进行验证。

中的用户控件? 
答:用户控件一般用在内容多为静态,或者少许会改变的情况下..用的比较大..类似ASP中的中所有的自定义用户控件都必须继承自________? 

143、当类T只声明了私有实例构造函数时,则在T的程序文本外部,___可以___(可以 or 不可以)从T派生出新的类,不可以____(可以 or 不可以)直接创建T的任何实例。  答:不可以,不可以。

146、大概描述一下ASP。NET服务器控件的生命周期 
答:初始化 加载视图状态 处理回发数据 加载 发送回发更改通知 处理回发事件 预呈现 保存状态呈现处置卸载

答:不能,可以实现接口 
提示帮助只有在分离的代码文件,无 法 在页面嵌入服务器端代码获得帮助提示, 
3 代码和设计界面切换的时候,中增加了40多个新的控件,减少了工作量 
155、重载与覆盖的区别?  答:1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系 
2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。 
3、覆盖要求参数列表相同;重载要求参数列表不同。 
4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调 用时的实参表与形参表来选择方法体的。 
156、描述一下C#中索引器的实现过程,是否只能根据数字进行索引?  答:不是。可以用任意类型。

提供的加载N条数据的方法,数据量大的情况下,不见得就会慢.   
  据我测试,真正慢的,是在取数据总共多少条这个步骤上.此操作在数据少时,没有影响,但在百万条记录以上时,求取数据总数,耗时就会大量增加.所以,大数据量条件下,即不应再显示"共几条/当前第几条"这样的信息.   
  181、权限控制方面问题:      从面向对象的角度讲,如果一个程序中,没有应用角色及角色组的话,那么这个程序是不合格的.一般来说,权限是由权限及流程角色组合而来的,如果仅有权限而没有角色,那么这个控制不灵活;如果仅有角色没有权限,那么这个控制不细致.   当然,用SESSION肯定是要的,但这个SESSION,应当只记录当前用户的个人信息,比如他的用户名.在需要判断的时候,根据他的用户名(唯一),至数据库中去取他的权限,或在类中编写权限/角色,根据此用户的用户号及当前模块号,计算当前用户是否对当前页面有操作权限.不过,如果把用户的权限也取出来放在SESSION中的话,这种做法一般仅在很小的网站中使用,稍大一点的系统,基本不允许这么做,而且也做不到


2 .列举中读写数据库需要用到那些类?他们的作用?


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

构架下remoting和webservice两项技术的理解以及实际中的应用。
答:WS主要是可利用HTTP,穿透防火墙。而Remoting可以利用TCP/IP,二进制传送提高效率。

答:用户控件一般用在内容多为静态,或者少许会改变的情况下..用的比较大..类似ASP中的中常用的对象有哪些?分别描述一下。

中所有的自定义用户控件都必须继承自________?

托管代码中我们不用担心内存漏洞,这是因为有了______?

中,类的错误处理机制是什么?

下,.net引用了垃圾回收(GC)功能,它替代了程序员 不过在C#中,不能直接实现Finalize方法,而是在析构函数中调用基类的Finalize()方法

不依赖于ole db提供程序,而是使用.net托管提供的程序,2:不使用com3:不在支持动态游标和服务器端游 4:,可以断开connection而保留当前数据集可用 5:强类型转换 6:xml支持

121.描述一下C#中索引器的实现过程,是否只能根据数字进行索引?
答:不是。可以用任意类型。

1)以上代码可以正确使用连接池吗?

答:回答:如果传入的connectionString是一模一样的话,可以正确使用连接池。不过一模一样的意思是,连字符的空格数,顺序完全一致。

126.公司要求开发一个继承System.Windows.Forms.ListView类的组件,要求达到以下的特殊功能:点击ListView各列列头时,能按照点击列的每行值进行重排视图中的所有行 (排序的方式如DataGrid相似)。根据您的知识,请简要谈一下您的思路:
答:根据点击的列头,包该列的ID取出,按照该ID排序后,在给绑定到ListView中

答:声明方法的存在而不去实现它的类被叫做抽像类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽像类,并让它指向具体子类的一个实例。不能有抽像构造函数或抽像静态方法。Abstract 类的子类为它们父类中的所有抽像方法提供实现,否则它们也是抽像类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。
接口(interface)是抽像类的变体。在接口中,所有方法都是抽像的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽像的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对像上调用接口的方法。由于有抽像类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

我要回帖

更多关于 如何把access放在服务器上 的文章

 

随机推荐