就是愛分享
Q:
如何用GMAIL來發信?
A:
假設GMAIL的帳號是account,密碼是password




Q:
如何用超連接傳送變數?
A:
如在任一頁中建超連接:< a href=Edit.aspx?fbid=23>點擊< /a>
在Edit.aspx頁中取值:String str=Request.QueryString["fbid"];


Q:
承上題,當從電子信箱點擊帳號開通信件的網址時,出現「剖析器錯誤訊息 無法辨認的屬性 'type'。」錯誤訊息。
A:
將IIS中ASP.NET版本的組態設定從1.1改成2.0即可。


Q:
如何在SQL語法處理變數?
A:
(a).SQL修改『某紀錄』語法
Update 1a set name = ‘jack’, chi = 90 where id_no=’90001’
(b).當有變數時的SQL修改語法(C#)
”Update 1a set name = '" + textBoxName.Text + "', chi = " + Int32.Parse(textBoxChi.Text) + " where id_no=' " + textBoxNo.Text + "'";

注意:什麼時候要用單引號『’』,什麼時候不用加呢?
字串:字串前後要加上 ‘ 單引號
Values('" & txt_5_PrjCode.Text & "')”

數值:數值前後要不用加,但是所引用的textbox.text要先用Int32.Parse轉換成數值格式
Values(" & Int32.Parse (txt_5_Period.Text) & "')”

日期:字串前後要加上 ‘ 單引號,所引用的textbox.text要先用DateTime.Parse轉換成日期格式
Values('" & DateTime.Parse(txt_5_BeginDay.Text) & "')”


Q:
網頁之間如何傳接值?
A:
1. 使用QueryString變量
QueryString是一種非常簡單的傳值方式,他可以將傳送的值顯示在瀏覽器的地址欄中。如果是傳遞一個或多個安全性要求不高或是結構簡單的數值時,可以使用這個方法。但是對於傳遞數組或對象的話,就不能用這個方法了。下面是一個例子:

a.aspx的C#代碼
private void Button1_Click(object sender, System.EventArgs e)
{
string s_url;
s_url = "b.aspx?name=" + Label1.Text;
Response.Redirect(s_url);
}

b.aspx中C#代碼
private void Page_Load(object sender, EventArgs e)
{
Label2.Text = Request.QueryString["name"];
}

2. 使用Application 對象變量
Application對象的作用範圍是整個全局,也就是說對所有用戶都有效。其常用的方法用Lock和UnLock。

a.aspx的C#代碼
private void Button1_Click(object sender, System.EventArgs e)
{
Application["name"] = Label1.Text;
Server.Transfer("b.aspx");
}

b.aspx中C#代碼
private void Page_Load(object sender, EventArgs e)
{
string name;
Application.Lock();
name = Application["name"].ToString();
Application.UnLock();
}

3. 使用Session變量
想必這個肯定是大家使用中最常見的用法了,其操作與Application類似,作用於用戶個人,所以,過量的存儲會導致服務器內存資源的耗盡。

a.aspx的C#代碼
private void Button1_Click(object sender, System.EventArgs e)
{
Session["name"] = Label.Text;
}

b.aspx中C#代碼
private void Page_Load(object sender, EventArgs e)
{
string name;
name = Session["name"].ToString();
}

4. 使用Cookie對象變量
這個也是大家常使用的方法,與Session一樣,但Cookie是存放在客戶端,而session是存放在服務器端。而且Cookie的使用要配合ASP.NET內置對象Request來使用。

a.aspx的C#代碼
private void Button1_Click(object sender, System.EventArgs e)
{
HttpCookie cookie_name = new HttpCookie("name");
cookie_name.Value = Label1.Text;
Response.AppendCookie(cookie_name);
Server.Transfer("b.aspx");
}

b.aspx中C#代碼
private void Page_Load(object sender, EventArgs e)
{
string name;
name = Request.Cookies["name"].Value.ToString();
}

5. 使用Server.Transfer方法
這個才可以說是面象對象開發所使用的方法,其使用Server.Transfer方法把流程從當前頁面引導到另一個頁面中,新的頁面使用前一個頁面的應答流,所以這個方法是完全面象對象的,簡潔有效。

a.aspx的C#代碼
public string Name
{
get{ return Label1.Text;}
}
private void Button1_Click(object sender, System.EventArgs e)
{
Server.Transfer("b.aspx");
}

b.aspx中C#代碼
private void Page_Load(object sender, EventArgs e)
{
a newWeb; //實例a窗體
newWeb = (source)Context.Handler;
string name;
name = newWeb.Name;
}


Q:
在.NET 3.0下Web Form如何與Dynamic實體網站結合?
A:
必須先建立Dynamic實體網站,然後再將做好的Web Form程式從「我的電腦」拖拉到Visual Studio的「方案總管」,唯專案名稱要ㄧ樣,同時Web.config的SQL連接字串設定要注意,不要覆蓋到Dynamic實體網站的Web.config,例如:



另外注意當SQL的資料表、某資料表的欄位,或者其他有新增、刪除等異動時,只要從"實體資料模型"中按右鍵執行"從資料庫更新模型"即可!

閱讀全文...