执剑跨秋霜 引吭歌燕赵 千里平原秋叶老 只等春来到 任尔秋冬寒 但闻我声笑 待到百家燕归来 我自剑出鞘

PHPer初涉asp.net的心得体验及两者对比[2]

上一篇 / 下一篇  2008-02-15 18:51:58 / 个人分类:心得体会

查看( 2333 ) / 评论( 17 )

关于配置信息

PHP中,我们通常会include一个配置文件(我通常起名叫做config.php),这个配置文件里面存储了数据库连接信息或是其它配置信息,比如

class configuration

 /**
  * 数据库连接参数
  * @var $cfg['db']
  */
 var $db=array(
  'type'=>'mysql',
  'host'=>'localhost',
  'user'=>'opencrm',
  'pwd'=>'******',
  'port'=>'3306',
  'name'=>'******',
  'pconn'=>'',
  'page_size'=>'15',
  'char'=>'utf8',
  
 );

}

届时会这样使用

$cfg = new configuration;

echo $cfg->db["host"];

 

而在ASP.net中呢,他在根目录下会专门有一个web.config文件来存储配置信息,这是一个结构类似于XML的文件,你可以在里面自定义各种变量,不过里面也有.net自已存储的一些配置信息,比如下面这样

<?xml version="1.0"?>
<configuration>  
 <connectionStrings>
  <add name="pubsConnectionString" connectionString="Data Source=SAMPAN;Initial Catalog=pubs;Persist Security Info=True;User ID=sa;Password=sa"
   providerName="System.Data.SqlClient" />
 </connectionStrings>
 <system.web>
    <authentication mode="Windows"/>   
    <httpRuntime maxRequestLength="4096" executionTimeout="60" appRequestQueueLimit="100"/>
 </system.web>
</configuration>

如果我想要读取
Data Source=SAMPAN;Initial Catalog=pubs;Persist Security Info=True;User ID=sa;Password=sa

的话,可以用这样的方式

ConfigurationManager.connectionStrings["pubsConnectionString"]

 

关于事件处理

asp.net真的很VB,因为MS想把WEB设计做成软件设计的样子。

在PHP中,通常我们都是通过表单form来触发事件的,所以要在form那里指定受理的文件(当然了,如果用XAJAX的话,也可以很VB)

然而在asp.net中,表单form不会指定受理文件,他的理务处理大多由"CodeFile"指定的文件内的对像的成员方法完成,比如default.aspx

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="default.aspx.cs" Inherits="_Default" %>

而在default.aspx.cs里面肯定会有一个类“_Default”

比如default.aspx内有一个表单,用于添加数据的,那么他是这样的

<form id="form1" runat="server">     
<!--这个是表单-->
<asp:TextBox ID="TextBox_zip" runat="server"></asp:TextBox>  
<!--WEB控件:文本输入框-->
<asp:Button ID="Button1" runat="server" Text="确认" ōnClick="Button1_Click" />  
<!--WEB控件:提交按钮-->
</form>

当你点击确定,由onclick事件触发Button1_Click,而这个Button1_Click则是default.aspx.cs里面类“_Default”的成员方法

用起来是不是跟VB一样??所以我说asp.net很VB


TAG: 心得体会

燕子坞 顺顺利利 发布于2008-02-15 19:01:28
不鸡歪了,收工走人
上帝保佑楼下的公车站没有这么多人
辉老大的地盘 leehui1983 发布于2008-02-17 13:39:11
lz有时间可以继续发,我挺喜欢看的
strongability的个人空间 strongability 发布于2008-02-17 15:41:57
继续
luzhou(浅玉)的空间 luzhou 发布于2008-02-17 17:14:57

QUOTE:

原帖由 leehui1983 于 2008-2-17 13:39 发表
lz有时间可以继续发,我挺喜欢看的

luzhou(浅玉)的空间 luzhou 发布于2008-02-17 17:16:50
其实还是PHP的可编程性、可定制性比较高,在需要考虑一些特殊功能时,其优势就彰显无遗了哦。

辉老大的地盘 leehui1983 发布于2008-02-17 20:18:07

QUOTE:

原帖由 luzhou 于 2008-2-17 17:16 发表
其实还是PHP的可编程性、可定制性比较高,在需要考虑一些特殊功能时,其优势就彰显无遗了哦。
这点我很同意,感觉asp。net很像jsp技术,html部分用很多tag,相比之下,php更随意一些,更快速,方便,以目前php的发展,在web方面的优势会越来越明显
luzhou(浅玉)的空间 luzhou 发布于2008-02-17 20:38:35

QUOTE:

原帖由 leehui1983 于 2008-2-17 20:18 发表

这点我很同意,感觉asp。net很像jsp技术,html部分用很多tag,相比之下,php更随意一些,更快速,方便,以目前php的发展,在web方面的优势会越来越明显
应该说ASP.NET和JSF比较像,确切地说,是JSF像ASP.NET。
如果PHP能够在MVC方面更进一步,将会让很多人更满意。

luzhou(浅玉)的空间 luzhou 发布于2008-02-17 20:41:28
ASP.NET高度封装了很多技术实现,有好的方面,也有不好的方面,就像一把双刃剑。

燕子坞 顺顺利利 发布于2008-02-18 10:53:25
唉,人人都说PHP是快速开发,依我看asp.net才是快速开发了,用鼠标点几下就over了,倒是PHP才是应用强大灵活百变啊~啊~
quanhaier的个人空间 quanhaier 发布于2008-02-18 13:15:19
换汤不换药,本质都一样
jsp还把整个html页编译成serlet类呢
燕子坞 顺顺利利 发布于2008-02-18 13:22:59

QUOTE:

原帖由 quanhaier 于 2008-2-18 13:15 发表
换汤不换药,本质都一样
jsp还把整个html页编译成serlet类呢
是啊,我以前用ASP时看JAVA还觉得奇怪呢,为什么会这样
但是现在大家都这样了,我也不觉得奇怪了~
小强(占卜师) coolstr 发布于2008-02-20 00:02:45
asp.net 跟PHP很大的不同是,
asp.net是以事件驅動方式來觸發事件的.
寫windows程序(VB,dephi等)的人更習慣這種方式.
dhgdmw发布于2008-03-02 23:22:29
继续写
随风的个人空间 szy_session1987 发布于2008-03-03 14:30:24
一个简单的配置文件为什么要写成一个类呢...

这种类就是一种"弱智"类.....
燕子坞 顺顺利利 发布于2008-03-04 23:45:10

QUOTE:

原帖由 szy_session1987 于 2008-3-3 14:30 发表
一个简单的配置文件为什么要写成一个类呢...

这种类就是一种"弱智"类.....
哈哈哈,他用个数组之前都得先new一下,好像下面这个一样~


string[] arr_test = new string [] ;
heixiake的个人空间 heixiake 发布于2008-03-04 23:57:48
社会乃至世界中的一切都有片面性,有好就有坏呀
heixiake的个人空间 heixiake 发布于2008-03-04 23:58:19

QUOTE:

原帖由 dhgdmw 于 2008-3-2 23:22 发表
继续写
同意
我来说两句

(可选)

数据统计

  • 访问量: 7663
  • 日志数: 38
  • 图片数: 3
  • 书签数: 5
  • 建立时间: 2007-04-19
  • 更新时间: 2008-04-14

RSS订阅

Open Toolbar