ASP.NET网页设计用C#和ADO.NET创建一个数据绑定网格
因为二次编译器太复杂,那么建议只是在安装程序的时候编译一次,而不类似java那样运行就编译。并且我觉得,一次痛苦,总比多次低效率要舒服多了。ado|数据 数据会见是任何使用程序的基本。在本文中,我将申明怎样用C#和ADO.NET会见基于SQLServer的数据,和怎样在一个数据绑定的网格控件中显现数据。我用一个复杂的C#使用程序为例。ADO.NET布局
利用ADO.NET不必要保持一个毗连。别的,在ADO.NET中,只需用几行代码,你就能够从一个数据源转到另外一个数据源。
ADO.NET的中心工具有Command,Connection,DataReader和DataAdapter。它们是.NET中一切数据操纵的基本。
中心ADO.NET定名空间
System.Data:是别的定名空间的基本,并增补DataTable,DataColumn,DataView和Constraints工具。
System.Data.Common:界说由各类数据供应者共享的一般工具,包含DataAdapter,DataColumnMapping和DataTableMapping。它为数据供应者所用,包括用于会见数据源的汇合。
System.Data.OleDb:界说你用来毗连到数据源并修正各类数据源中的数据的工具。它作为一般数据供应者而编写,由包括SQLServer、微软OracleOLEDBProvider和微软Jet4.0Provider驱动器的.NETFramework供应实行。当你必要毗连到很多分歧的数据源时,就会用到这个定名空间,而且你但愿到达比供应者更佳的功能。
System.Data.SqlClient:间接使用SQLServer使用程序接口,供应比更加一般的System.Data.OleDb更佳的功能。这是一个专门为SQLServer7.0及以上版本创建的供应者定名空间。
System.Data.SqlTypes:专门为SQLServer的数据范例供应类。这个定名空间专为SQLServer而计划,并供应比别的定名空间更佳的功能,但只使用于SQLServer后端。
System.Data.Odbc:处置一切兼容ODBC驱动器。只要.NETFramework1.1撑持这个定名空间,以是安装新版Framework就可以取得它。
数据网格实例
给表格dataGrid1增添一个数据网格,如所示。为了让列表A中的样本代码可以运转,必要使用上面的定名空间:
usingSystem.Data;
usingSystem.Data.OleDb;
列表A
usingSystem.Data;
usingSystem.Data.OleDb;
privatevoidForm1_Load(objectsender,System.EventArgse)
{
stringstrConn,strSQL;
strConn="Provider=Microsoft.JET.OLEDB.4.0;"+"datasource="+"C:DataAccessNorthwind.mdb";strSQL="SELECTCustomerID,CompanyName,ContactName,ContactTitle,";
strSQL=strSQL+"Address,City,CountryFROMCustomers";
OleDbDataAdapterda=newOleDbDataAdapter(strSQL,strConn);
DataSetds=newDataSet();
da.Fill(ds,"Customers");
dataGrid1.DataMember="Customers";
dataGrid1.DataSource=ds;
}
下面的代码界说了两个变量:strConn和strSQL。StrConn利用OLEDB设定使用JET数据库所需的毗连字符串,并指向外地盘算机的Northwind.mdb数据库地位。StrSQL指定我想在Access数据库(Northwind.mdb)上运转的查询。
接上去,我界说OleDBDataAdapter工具da并将它提交给查询语句(strSQL)和毗连字符串(strConn)。注重,我在例子中没有创建一个毗连(Connection)工具。
然后,我界说数据组ds,它被用来从网格控件中的用户表(Customers)中取得实践数据。我使数据网格控件dataGrid1的DataMember特征指向到我取得数据的表格,并将控件DataSource的特征设定给DataSetds。(DataMember特征取得/设定DataSource中的一个绑定控件的表格,DataSource特征取得/设定用来安装控件的数据源。)当你运转列表A中的代码时,了局如所示。
我显现C:DataAccessNorthwind.mdb数据库中的数据,只看到我在选择语句当选中的栏。假如选择的列数或栏数凌驾页面的巨细,网格控件会主动显现转动条。
如今你懂得了在C#使用程序中利用ADO.NET,和创建一个数据网格控件显现查询前往数据的基础道理了。
我以前很喜欢Serv-U,自从它用Java重写之后我就再也没用过,实在是太慢了,我宁可用IIS搭建FTP,虽然IIS搭建FTP在权限管理上很不灵活。 ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。 可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。 是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错)。 Asp.net:首先来说,Asp.net和Asp没什么关系,看着像是升级版本什么的,其实没什么联系。Asp是脚本编程,用的是ASP语言,而ASP.net用的是C#语言,完全不同的东西。 ASP在执行的时候,是由IIS调用程序引擎,解释执行嵌在HTML中的ASP代码,最终将结果和原来的HTML一同送往客户端。 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。 虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。
页:
[1]