因為Asp.Net中常被使用的 <sqldatasource>, 並無 Exception Handle 的機制.
所以就算用了 <sqldatasource> 的 Caching, 可能還是有某種程度的風險.
例如: 在 Caching 時間到的時候, 剛好資料庫無法連線.
概念上簡單地說, 就是當 Caching 出錯時, 能保留上一次所儲存的資料, 以讓網頁正常運作.
2008/06/11
[ASP.Net]透過WebRequest抓取網路上的圖檔
以下程式是透過 WebRequest 的方式將網路中的圖檔存到本機:
string Url = "http://l.yimg.com/tw.yimg.com/i/tw/hp/spirit/yahoo_logo.gif";
string FullFileName = @"c:\tmp\yahoo_logo.gif";
HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(Url);
//預設TimeOut是30秒
webReq.Timeout = 30000;
HttpWebResponse webResp = (HttpWebResponse)webReq.GetResponse();
//檢查儲存的檔案路徑,其目錄是否存在
if (!Directory.Exists(Path.GetDirectoryName(FullFileName)))
{
//建立目錄
Directory.CreateDirectory(Path.GetDirectoryName(FullFileName));
}
using (BinaryReader imgStream = new BinaryReader(webResp.GetResponseStream()))
{
File.WriteAllBytes(FullFileName, imgStream.ReadBytes((int)webResp.ContentLength));
}
2008/04/25
[ASP.Net]AJAX的SlideShowExtender使用說明
ASP.Net 的 AJAX Control Toolkit 有一個用來做圖片輪播的 SlideShowExtender.
以下的範例除了說明該 Control 的運作, 亦說明如何依使用者所點選的分類, 來呈現該分類下的圖片.
以下的範例除了說明該 Control 的運作, 亦說明如何依使用者所點選的分類, 來呈現該分類下的圖片.
2008/02/20
[SQL Server 2005]使用mdf檔附加資料庫(無ldf檔)
假如要將 A 電腦資料庫的 Test.mdf 檔(無 ldf 檔) 附加到 B 電腦的資料庫, 步驟如下:
- 在 B 電腦的 SQL Server 中新增一個資料庫, 例如: Test.
- 停止 B 電腦的 SQL Server 服務.
- 將 A 電腦資料庫的 Test.mdf 檔覆蓋掉 B 電腦 Test 資料庫的 Test.mdf 檔.
- 啟動 B 電腦的SQL Server服務.
- 在 B 電腦的 SQL Server Management Studio 中, 開啟一個 master 資料庫的查詢視窗.
- 設定 Test 資料庫狀態為 EMERGENCY: ALTER DATABASE Test SET EMERGENCY
- 設定 Test 資料庫模式為"單一使用者": sp_dboption 'Test', 'single user', 'true'
- 檢查指定資料庫中所有物件的配置、結構和邏輯完整性: DBCC CHECKDB (Test, REPAIR_ALLOW_DATA_LOSS)
- 還原 Test 資料庫模式: sp_dboption 'Test', 'single user', 'true'
- 設定 Test 資料庫狀態為 ONLINE: ALTER DATABASE Test SET ONLINE
2008/01/04
[ASP.Net] 在asp:Button加入Vaildation與javascript的confirm
- 設計 <asp:Button> 與一個需要驗證的 Control:
<asp:Button ID="btnUpdate" runat="server" Text="更新" CommandName="Update" CausesValidation="false" OnClientClick="return confirmUpdate();" ValidationGroup="vgUpdate" /> <asp:TextBox ID="txtUpdateName" runat="server" Text="HelloWorld"></asp:TextBox> <asp:RequiredFieldValidator ID="UpdateNameRequired" runat="server" ControlToValidate="txtUpdateName" ToolTip="必須輸入名稱。" ErrorMessage="必須輸入名稱。" ValidationGroup="vgUpdate">*</asp:RequiredFieldValidator>
- 要將 CausesValidation 設定為 false, 以避免在 Client 端產生多餘的 validation.
- 在 OnClientClick 中設定呼叫一個 javascript 的 function.
- 對於要驗證的項目, 需給定一個 ValidationGroup 值 (ex: vgUpdate)
訂閱:
文章 (Atom)