当前位置:中国站长下载文章中心网页编程.NET编程 → 从 PHP 迁移到 ASP.NET(7)

从 PHP 迁移到 ASP.NET(7)

减小字体 增大字体 作者:不详  来源:不详  发布时间:2006-8-14 8:39:32
     发送电子邮件
  PHPASP.NET 都为以编程方式发送电子邮件提供了内置的支持。要在此示例中使用 ASP.NET 发送电子邮件,您需要设置 IIS SMTP 服务。因为 .NET 中的内置邮件对象依赖于该服务包含的对象,所以您必须安装它。尽管如此,与 PHP 一样,.NET 也允许您使用任何 SMTP 服务器或邮件服务器。表 14 对这两种环境的基本语法进行了比较。
  
  表 14:发送电子邮件
  
  PHP Visual Basic .NET
  $to = "test@atnoaddress.com";
  $from =
  
  "me@nosuchaddress.com";
  
  $subject = "hi";
  
  $message = "just wanted to say
  
  hi";
  
  mail($to,$subject,$message,
  
  $from)
   Dim myMail As MailMessage = New
  MailMessage()
  
  myMail.From = "me@nosuchaddress.com"
  
  myMail.To = "test@atnoaddress.com"
  
  myMail.Subect = "hi"
  
  myMail.Body = "just wanted to say hi"
  
  SmtpMail.Send(myMail)
  
  
  XML 处理和 Web 服务
  在 PHP 中,为分析和处理 XML 所提供的内置支持功能非常薄弱。虽然开发人员可以用它来分析和处理 XML,但它不支持 DOM 分析(该分析尽管比 PHP 的 SAX 分析器速度慢,但更容易使用)。PHP 也不支持根据 DTD 或 XML SCHEME 对 XML 文档进行本地验证,它也不支持 XSL/XSLT 以及市场上许多 Web 应用程序常用的各种其他技术。虽然 PHP 可以通过很多 PHP 软件包完成许多与 XML 相关的任务,但 .NET 和 ASP.NET 为处理 XML 提供了广泛的内置支持。XML 是 .Net 平台的核心技术之一。有关 Web 服务的详细信息,请参阅 How ASP.NET Web Services Work。
  
  .NET Framework 为 W3C 定义的所有 XML 建议提供了广泛的支持,此外还支持 XSL/XSLT、XPath、XQuery 以及各种其他技术,例如用于 Web 服务的 UDDI、WSDL 以及 SOAP。
  
  虽然可以在 PHP 中创建 XML-RPC 类型的机制,但创建 Web 服务(使开发人员能够使用常用协议和标准来交换数据和过程并将其用于查找、数据绑定和描述)。.NET 为 Web 服务和相关技术(如 SOAP、WSDL 和 UDDI)提供了广泛的支持。使用 .NET,开发人员还可以轻松地创建和开发 Web 服务。例如,以下代码将创建一个简单的 hello world Web 服务:
  
  <%@ WebService Language="VB" Class="HelloWorld" %>
  
  Imports System
  Imports System.Web.Services
  
  Public Class HelloWorld :Inherits WebService
  
   <WebMethod()> Public Function SayHelloWorld() As String
   Return("Hello World")
   End Function
  
  End Class
  
  利用 .NET Framework SDK,您可以使用命令行 Web 服务描述语言工具 (WSDL.exe) 生成代理类。要为上述示例创建一个名为 HelloWorld.cs 的代理类,可以输入:
  
  WSDL http://someDomain.com/someFolder/HelloWorld.asmx?WSDL
  
  此类与前面创建的类非常相似。它包含一个名为 SayHelloWorld 的方法,用于返回字符串。将此代理类编译到应用程序中,然后调用此代理类的方法,使该代理类通过 HTTP 将 SOAP 请求打包并接收 SOAP 编码的响应,该响应随后被封装为字符串。
  
  对于客户端,该代码是非常简单的,如以下示例所示:
  
  Dim myHelloWorld As New HelloWorld()
  Dim sReturn As String = myHelloWorld.SayHelloWorld()
  
  这就是创建一个简单 Web 服务的全过程。有关 XML 的一般信息以及 Web 服务的特定信息,请参阅 Employing XML in the .NET Framework。
  
  小结
  
  对于简单的小型应用程序,从 PHP 迁移到 ASP.NET 通常并不复杂。对于更复杂的应用程序,由于基础体系结构的不同以及 ASP.NET 的 OOP 模式,需要进行事先规划和精心设计,以利用 ASP.NET 提供的将显示与逻辑和数据明确分开的功能,以及可以节省时间的内置功能。与 PHP 相比,这些功能可以显著减少完成相同任务所需的代码数量。
  
    做人要厚道,请注明转自chinazhan中国站长(www.ChinaZhan.com)。