王国荣之ASP+与VB.Net问答QA总汇
由hejianzhong整理 版权归原作者所有
###################################################################################
現在的 VB7 (Beta 1)與將來發表的 VB7(正式版),在用法上會不會有很多不一樣的地方?
--------------------------------------------------------------------------------
文件日期:2001/01/29
程式語言的基本屬於 .NET Framework 較底層的部分,如果這個部分會有很大的變動,架構在 .NET Framework 上面的工具其變動將更大,因此,據研判將來 VB7 在語法上的變動應該很小,或者就不再變動了。
###################################################################################
安裝 .NET SDK之後,VB6是不是就會成為VB.NET,會不會影響VB6原來的程式的運作?
--------------------------------------------------------------------------------
文件日期:2001/02/06
安裝 .NET SDK 之後,VB6 不會成為 VB.NET,VB.NET Beta 1 附屬於 Visual Studio.NET Beta 1,而 Visual Studio.NET Beta 1 有 3 片光碟片。
###################################################################################
在Win2000 Server 是否有提供以網頁上傳檔案的功能,如果仍未提供,除了從 NT4.0 升級 2000 的方法外,是否有替代方案?
--------------------------------------------------------------------------------
文件日期:2001/02/06
ASP.NET 領先研究一書 8-1 節就有介紹 ASP+ 的檔案上傳功能(不管在 NT 4.0 或 2000 底下都可以正常運作)。
--------------------------------------------------------------------------------
###################################################################################
第二章所提到的 config.web 檔案是否要每個目錄都放一個,或是放在一個目錄後,其餘的子目錄都不用放了,另外,虛擬目錄要不要放?
--------------------------------------------------------------------------------
文件日期:2001/02/19
config.web 的效力及於其子目錄,如果放在 aaa 目錄,則 aaa 的子目錄就可以不用再放了,但如果 aaa 的子目錄想要有自己的設定,則可以在自己的目錄放置另一個 config.web 檔案。
最特殊的目錄是 wwwroot 目錄(若安裝時未做改變,預設目錄為 c:Inetpubwwwroot),放在 wwwroot 目錄的config.web檔案其效力則及於wwwroot的所有子目錄所有虛擬目錄。
####################################################################################
ASP 網頁中的 Session 變數似乎不能傳遞至 ASP+ 網頁中,還是另有其他方式可讀取?
--------------------------------------------------------------------------------
文件日期:2001/02/19
Session 在 ASP 及 ASP+ 之中確實是不相通的,但 Cookie 卻是相通的,因為 Cookie 是儲存在瀏覽器之中,您可以您可以改以 Cookie 取代 Session。
--------------------------------------------------------------------------------
####################################################################################
ASP 之中儲存及讀取 Cookie 的敘述好像不適用於 ASP+?
--------------------------------------------------------------------------------
文件日期:2001/02/19
在 ASP 網頁製作教本中,讀取及儲存 Cookie 的敘述如下:
data1 = Request.Cookies("data1")
Response.Cookies("data1") = data1
而這兩個敘述等於:(註:其中的 Value 是 Cookie 預設的屬性)
data1 = Request.Cookies("data1").Value
Response.Cookies("data1").Value = data1
但是在 ASP+ 並不接受預設的屬性,所以:
data1 = Request.Cookies("data1") 錯誤
Response.Cookies("data1") = data1 錯誤
data1 = Request.Cookies("data1").Value 正確
Response.Cookies("data1").Value = data1 正確
####################################################################################
如果一個 aspx 網頁使用兩個以上的 Pagelet(Pagelet 介紹於第 7 章),而其中的函數重複(例如兩個 Pagelet 都有定義 Page_Load 事件程序),是否會有衝突?
--------------------------------------------------------------------------------
文件日期:2001/02/19
不同 Pagelet 的副程式(函數)是各自獨立的,因此可以有各自的 Page_Load 事件程序。
--------------------------------------------------------------------------------
####################################################################################
在 Asp+ 裡要加上註解是如同 Asp 的規則嗎?
--------------------------------------------------------------------------------
文件日期:2001/02/19
跟 ASP 一樣,如果在 VB 程式中加註,也是使用單引號(),如果在 HTML 文件中加註,也是使用 <!-- 註解文字 -->。
--------------------------------------------------------------------------------
####################################################################################
在 Asp+ 裡如果一行太長的話,是不是可在任何地方將它移到下一行,而不必如 VB 一樣在第一行的行尾加上 _ 符號..?
--------------------------------------------------------------------------------
文件日期:2001/02/19
一樣要使用 _。
####################################################################################
Page_load 事件程序的參數
--------------------------------------------------------------------------------
文件日期:2001/03/30
Q:
Page_load(sender As Object, e AS EventArges) 裡面都是用 sender 及 e,這是 ASP+ 的規定或是可以隨便用? 如果一個 <Script...> </Script> 裡面有兩個 Sub ...End Sub,也是可以都用 sender、e 嗎?
A:
Page_Load 是 ASP+ 預設的事件程序,事件程序跟副程式(函數)一樣會先定義參數(包含「個數」及「型別」),以 Page_Load 為例,參數有兩個,其型別分別等於 Object 及 EventArges,至於參數的「名稱」則可以由我們自定,例如將:
Sub Page_load(sender As Object, e AS EventArges)
改成
Sub Page_load(P1 As Object, P2 AS EventArges)
也是可以的。至於兩個不同的Sub都定義相同的sender參數「名稱」,是沒關係的。
--------------------------------------------------------------------------------
####################################################################################
grid8.aspx 程式的修改
--------------------------------------------------------------------------------
文件日期:2001/03/30
Q:
有關第五章的 p.5-21 DataGrid欄位的連結(程式位於 p5-23 的 grid8.aspx),我嘗試把「學號」的連結改為「姓名」的連結, 但皆顯示錯誤的訊息,我只是將:
<asp:BoundColumn DataField="學號" HeaderText="學號"/>
改成:
<asp:HyperLinkColumn DataTextField="姓名"
HeaderText="姓名"
DataNavigateUrlField="姓名"
DataNavigateUrlFormatString="students.aspx?id={0}"
Target="_blank" />
另一方面studends.aspx的修改如下:
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &
Server.MapPath("Sample.mdb")
SQL = "Select * From 成績單 Where 姓名=" & Request("id")
A:
問題出在studends.aspx的修改:
SQL = "Select * From 成績單 Where 姓名=" & Request("id")
「學號」欄位是數值,但「姓名」欄位是字串,所以以上敘述正確的修改是:
SQL = "Select * From 成績單 Where 姓名=" & Request("id") & ""
就是在 Request("id") 前後加上單引號。
####################################################################################
我無法順利下載 .NET Framework Beta1
--------------------------------------------------------------------------------
文件日期:2001/03/30
Q:
依照「ASP.NET 領先研究」書上第二章 2-5 節上 msdn.microsoft.com/downloads/default.asp 下載 .NET Framework SDK Beta1,因為 .NET Framework SDK Beta1 太大,一直無法下載成功,是否有其他管道取得 .NET Framework SDK Beta1 ?
我朋友有 Visual Studio.NET Beta 1,其中是否會有 .NET
补充:软件开发 , Vb ,