手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Asp.Net编程>列表

从 PHP 迁移到 ASP.NET

来源:互联网 作者:west263.com 时间:2008-02-22
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

System.Data、System.Data.SqlClient 和 System.Data.oledb 是用于在 ADO.NET 中定义数据库访问的命名空间。要使页面能够访问这些类,您需要将 System.Data 和 System.Data.SqlClient 命名空间导入到页面中。

<%@ Import Namespace="System.Data" %>

<%@ Import Namespace="System.Data.SqlClient" %>

图 13 显示了在这两种语言中执行查询的示例。在 PHP 中,我们显示了一个使用 PEAR 的连接,PEAR 不仅是用于连接 DB 的最常用方法之一,但还是与 ADO.NET 最为类似的方法。

表 13:执行查询

PHP Visual Basic .NET
<?php

//connect

require_once('DB.PHP');

$db=DB::connect

("mysql://mydbvie

w:user@localhost/mydb");

if (DB::iserror($db)) {

die($db->getMessage());

$sql = "select * from mytable";

$q= $db->query($sql);

if (DB::iserror($q)) {

die($q->getMessage());

}

<tr>

<td><?= $row[0] ?></td>

<td><?= $row[1] ?></td>

<td><?= $row[2] ?></td>

</tr>

<script runat="server">

Sub Page_Load(Sender As Object, E As

EventArgs)

Dim myConnection As New

SqlConnection("server=(local)\NetSDK;

database=mydb;Trusted_Connection

=yes")

Dim myCommand As New

SqlDataAdapter("select * from

mytable", myConnection)

Dim ds As New DataSet()

myCommand.Fill(ds, "myDataset")

myDataGrid.DataSource = myDataset

myDataGrid.DataBind()

End Sub

</script>

<%--- 输出结果 ---%>

<form runat="server">

<asp:DataGrid id="myDataGrid"

runat="server" />

</form>

在 PHP 中,查询结果存储在一个称为 result set(结果集)的变量中,而在 ADO.NET 中,该变量称为 Dataset 对象。结果集是返回数据的只读视图,而 .NET Dataset 实际上是返回数据在内存中的读写视图,这使 .NET 开发人员能够轻松地处理从数据源返回的数据。

输出数据时,ASP.NET 提供了若干方法,用于向用户或客户端显示数据。第一种方法与 PHP 类似,即使用 SQLDataReader 对象遍历结果集以写出我们要通过查询显示的数据。更常用的方法是 ASP.NET 的数据绑定(PHP 中没有与此对应的方法)。通过该方法,开发人员可以构建用户界面并显示可在应用程序中使用和重用的控件,还可以进一步根据数据和逻辑提取显示内容。数据绑定的语法很灵活,您不仅可以绑定到数据源,还可以绑定到简单的属性、集合、表达式,甚至是方法调用返回的结果。

要使用数据绑定,您需要向某个数据识别服务器控件(例如 DataGrid)的 DataSource 属性指定某个数据源(例如查询结果)。您还可以选择为每个列提供一些附加的格式化信息并调用 DataBind() 方法。服务器控件将负责完成剩余的工作。

例如,在表 13 中,我们使用了数据绑定语法输出查询结果,如下所示:

<%--- 在页面中加载事件

---%>

myDataGrid.DataSource = myDataset

myDataGrid.DataBind()

<%--- 输出结果 ---%>

<asp:DataGrid id="myDataGrid"

   runat="server" />


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!