分享使用微軟開發工具及工作上會遇到的疑難雜症
2008-03-31
[+/-] : 發現免費賺錢網站,只要動動滑鼠就可以喔^^
看來廣告的商機真的是很好賺^^
網站如下:
http://freemoneyguides2.blogspot.com/
http://freemoneyguides.googlepages.com/index.html...
Read more.
2008-03-30
[+/-] : SQL語法,保留字的處理方式
但是問題來了,如果在Key in SQL語法時,一個不小心就會掉進SQL保留字的錯誤信息,
舉例來說,請看以下SQL語法,更新TABLE有何問題
Update Log Set IsDeleted = 0 Where LogId = 'xxx';
看起來是不是很一般,呵,結果一執行馬上報錯,因為Log就是保留字,遇到保留字時很簡單
加上中括號把它關起來就好囉,解答如下
Update [Log] Set IsDeleted = 0 Where LogId = 'xxx';
簡單吧,保留字不止是TABLE會遇到,就連Column也是有保留字的,處理方式一模一樣
安全起見,如果都能用中括號關起來,是不是就好囉^^
Update [Log] Set [IsDeleted] = 0 Where [LogId] = 'xxx';...
Read more.
[+/-] : Ajax ModalPopup 設定寬度和長度
測試也成功了,引進專案用使用時,一切都很順利,直到發佈專案到IIS之後,發現ModalPopup的視 窗會被擠到很下面,真是怪,再回到VS2008測試,一切正常,拜了一下google,沒有找到答案,好吧,只好自己debug了,首先看到ModalPopup的Panel只有設定width="75%"沒有設定高度,所以我加上了高度之後,vs2008測試OK,IIS測試居然也OK了。
找到原因,原來是我叫用ModalPopup時要顯示的資料長度太長,所以跳出來的視窗會被擠到很下面,後來我限定了寬度和高度,並把Panel的拉Bar設成Auto,一切正常。
我只是覺得奇怪為何沒限定高度時,在vs2008顯示是正常,在IIS顯示卻是不正常,此題留到以後再解囉
case close...
Read more.
2008-03-19
[+/-] : 用VS2005和VS2008開發並且有在用RamDisk的朋友有福了Temporary ASP.NET Files
廢話不多說,直接切到重點
在VS2005以上開發ASP.NET專案時,開發段階系統會把網頁編譯後暫存到
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files
依你開的專案名稱再取目錄,說是暫存也不算是暫存,因為就會留在那裡了
只要你的程式有變更,就會再自行編譯進去。其實刪除也無所謂,因為只要用
VS2005以上瀏覽網頁時,它會再自行編譯進去,聰明的朋友已經想到我要說什麼了
如果可以把Temporary ASP.NET Files移到RamDisk是不是一件很美好的事情呢!
解決方案來囉!只要在專案的Web.config內加上,就可以了
<system.web>
<compilation tempDirectory="R:\ASP.Net Temporary Folder\" debug="false"/>
</system.web>
註:筆者的RamDisk是建在R槽...
Read more.
2008-03-18
[+/-] : [OPB秘方]你有這種"該記憶體不能為read(or write)的毛病困擾你嗎?
作者:狂少
http://forum.coolaler.com/showthread.php?t=167891&highlight=0x000000
你碰過0x000000...該記憶體不能為read或是write的錯誤訊息
然後你又氣到要翻桌嗎?
來,這味狂少牌錯誤解決法包你藥到命除...
不是..是藥到病除
方法:
1.開始--->執行--->cmd
2.填入這指令,目的在重新註冊及編排所有DLL
for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1
等所有dll重新註冊完,就不會再看到類似狀況
這對常換硬體做測試的朋友會有很大幫助!!
Good luck
真是強,連這個都知道,馬上來試用一下^^...
Read more.
2008-03-14
[+/-] : web 2.0教學影片,看了就會!
影片網址如下:
http://blog.soft.idv.tw/?p=145...
Read more.
[+/-] : web testing ieunit nant2report 網站測試工具和報表
http://blog.darkthread.net/blogs/darkthreadtw/archive/2008/02/26/1203.aspx#1771
相信大家看過黑大寫的文章之後,應該都會用了解ieunit才對,可是接下來要怎麼產生report.html呢
呵呵
為了方便起見,我自己做了一個rar檔,想要的讀者下載之後放到c槽,直接解壓縮後,
會產生一個目錄nant-0.85,這個目錄底下有二個目錄bin和TesResult,直接執行RunTest.bat後
就會開始跑Ieunit的測試項目,筆者預先做好的測試內容,RunTest.bat執行時會跳出dos視窗,接著會跳出IE開始測試,測試完畢會產生result.xml檔案,接著會跑nant2report,最後就產出result.htm來囉,有圖有真相,簡單吧!
下載nant-0.85.rar
...
Read more.
2008-03-08
[+/-] : GridView Page Ajax History 換頁時加入歷史記錄
前端.aspx
<asp:ScriptManager ID="ScriptManager1" runat="server" EnableHistory="true" EnableStateHash="false"/>
<asp:TextBox ID="TextBox1" runat="server" /><asp:Button ID="Button1" runat="server" Text="Button" />
<asp:GridView ID="GridView_CustomPaging" runat="server" AllowPaging="true"
AllowSorting="true" AutoGenerateColumns="False" DataKeyNames="StuWeekID" DataSourceID="ObjectDataSource_CustomPaging" SkinID="TaideGridView">
<Columns>
<asp:BoundField DataField="StuUserID" HeaderText="StuUserID" SortExpression="StuUserID" />
<asp:BoundField DataField="EntID" HeaderText="EntID" SortExpression="EntID" />
<asp:BoundField DataField="SchoolID" HeaderText="SchoolID" SortExpression="SchoolID" />
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ObjectDataSource_CustomPaging" runat="server" SelectMethod="GetStuWeekData" TypeName="mgStuWeek" EnablePaging="True"/>"
後端.aspx.vb(寫c#的朋友拍謝啦!網路上有很多轉換的網站,我就不貼上來了)
Protected Sub GridView_CustomPaging_PageIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView_CustomPaging.PageIndexChanged
'換頁時把頁碼加入歷史紀錄
If ScriptManager1.IsInAsyncPostBack And Not ScriptManager1.IsNavigating Then
Dim index As Integer = GridView_CustomPaging.PageIndex
ScriptManager1.AddHistoryPoint("PageIndex", index, "第 " & index + 1 & " 頁")
End If
End Sub
Protected Sub ScriptManager1_Navigate(ByVal sender As Object, ByVal e As System.Web.UI.HistoryEventArgs) Handles ScriptManager1.Navigate
'按上一頁會進到歷史紀錄的功能
Dim indexString As String = e.State("PageIndex")
Page.Title = "第 " & indexString & " 頁"
GridView_CustomPaging.PageIndex = CType(indexString, Integer)
GridView_CustomPaging.DataSourceID = ObjectDataSource_CustomPaging.ID
End Sub
搞定,簡單吧!...
Read more.
2008-03-01
[+/-] : ASP.NET Ajax History 上一頁功能失效
這應該算是一種困擾吧,假設每頁顯示100筆資料,當你看到第3頁時,突然想看某個項目的細項,當你點進去看到細項頁之後,想說按瀏覽器的上一頁會回到第3頁繼續瀏覽時,很抱歉!保證一定會回到第1頁,屢試不爽^^
有問題就會有改善的動力,微軟在新版的ASP.NET 3.5 Extendsion放入了History功能,雖然早在之前就有獨立的Control可以用,但是那是過去式了,有新的東西就來用新的吧
要先安裝ASP.NET 3.5 Extendsion如果web hosting 有支援.Net 3.5的話,我用的web hosting剛好就有支援
開專案時當然也要選ASP.NET 3.5 Extendsion囉
沒選Extendsion,ScriptManager不會出現EnableHistory讓你選
.aspx
<asp:ScriptManager ID="ScriptManager1" runat="server" EnableHistory="true" EnableStateHash="false" />
底下當然還有UpdatePanel和你要顯示的Gridview之類的控件
我試把過ViewState關掉都可以用History的功能
.vb
If ScriptManager1.IsInAsyncPostBack And Not ScriptManager1.IsNavigating Then
ScriptManager1.AddHistoryPoint("PageIndex", index, ConfigurationManager.AppSettings("PageTitle").ToString() & "- 全部案件第 " & index & " 頁")
End If
pager1.CurrentIndex = index
pager1.ItemCount = PostedBLL.GetPostedDataCount("All")
CaseRepeater.DataSource = PostedBLL.GetPostedByCustomPaging(index, pager1.PageSize, "All")
CaseRepeater.DataBind()
CaseUpdatePanel.Update()
End Sub
Protected Sub ScriptManager1_Navigate(ByVal sender As Object, ByVal e As System.Web.UI.HistoryEventArgs) Handles ScriptManager1.Navigate
Dim indexString As String = e.State("PageIndex")
Dim CaseIndex As Integer
If String.IsNullOrEmpty(indexString) Then
CaseIndex = 1
Else
CaseIndex = Convert.ToInt32(indexString)
End If
Page.Title = ConfigurationManager.AppSettings("PageTitle").ToString() & "- 全部案件第 " & CaseIndex & " 頁"
BindRepeater(CaseIndex)
End Sub
Read more.