日常問題總結 三
#Server.HtmlEncode
對一段字符串進行html編碼
response.write(Server.HTMLEncode("Theimage tag: <img>"))
輸出為:The image tag: <img>
瀏覽器端顯示為:The image tag: <img>
#ASP.Net中Session對象默認的有效期為20分鐘
IIS中Session的默認有效期為20分,對於登錄到ASP應用程序的用戶來說,如果在設置的時間內沒進行任何操作,超時後Session就會被撤銷。同通過Session.TimeOut來設置過期時間,單位為分鐘。
#Server.Transer
與Response.Redirect相比,Server.Transer同服務端直接轉向別的頁面,Redirect需要讓瀏覽器重新請求新的頁面;所以Redirect需要在服務端和客戶端往返兩次,Transfer則不必要這樣;但使用Transfer後,瀏覽器顯示的URL沒有變化,因為瀏覽器並不知道服務端進行了Transfer;Transfer只能跳轉到本地虛擬目錄中的頁面,Redirect則不受限制。
#JavaScript給獲取控件並賦值
vara=document.getElementById(“ID”);
a.Value=”value”;
#CSS選擇器
HtmlSelector:直接在大括號前寫html標簽;
ClassSelector:在標簽中定義class屬性後,在樣式中引用class屬性的值;
Id Selector:在標簽中定義ID屬性,在樣式中引用ID
Associationselector關聯選擇器:選擇器的嵌套使用,基本使用舉例:
div p {…}
<div>
<p>Association selector</p>
</div>
Combinationselector 組合選擇器:可以同時用於多種樣式,如:
p,div,a{…}
<p>style1</p>
<div>style1</div>
<a>style1</a>
這些元素會被設置為相同的樣式。
#Http狀態碼
1字頭,消息;
2字頭,成功;
3字頭,重定向;
4字頭,請求錯誤;
5、6字頭,服務器錯誤
典型的錯誤碼:
100Continue,告知客戶端它的部分請求已經被服務器接收,可以繼續發送剩余部分;
200OK,請求已成功;
202Accepted,服務器已接收請求,但尚未處理,異步請求常用;
300Multiple Choices,被請求的資源有一系列可供選擇的回饋信息,用戶或瀏覽器能夠選擇一個首選的地址進行重定向;
304Not Modifued,如果GET請求的內容沒有變化,直接從瀏覽器緩存獲取資源;
400Bad Request,當前請求無法被服務器理解;
407Proxy Authentication Required,客戶端需在代理服務器上進行身份驗證;
501Not Implemented,當前服務器無法識別請求的方法,並且無法支持其對任何資源的請求;
502Bad Gateway,作為網關或者代理工作的服務器嘗試執行請求時,從上有服務器接收到無效的響應
#DDL DML DCL
SQL命令的分類
DDL,Data DefinitionLanguage,數據定義語言,主要包含CREATE ALTER DROP等,主要用在定義或改變表的結構、數據類型、表關系、約束等。
DML,Data ManipulationLanguage,數據操縱語言,包含SELECT UPDATE INSERT DELETE。
DCL,Data Control Language,數據庫控制語義,包含GRANT DENY REVOKE等,用來設置或更改數據庫用戶或角色權限。
DBCC是另外的東西,DataBaseConsole Command,數據庫控制臺命令,這些語句對數據庫的物理和邏輯一致性進行檢查。許多DBCC語句能夠對檢測到的問題進行修復。
在查詢窗口輸入dbcc help(‘?‘)可以查看DBCC命令列表,但只顯示公開的命令列表,如果在執行help命令前輸入DBCC TRACEON(2588) ,隱藏命令也會顯示,一共100多個。
#阻斷finally的執行
return、throw這些無論在try還是catch中都無法跳過finally,用System.Environment.Exit(0)可以做到,看來能夠讓當前線程在執行finally前終止的方法才可以做到。
#十進制與二進制轉換時的精度問題:
?用float與double表示十進制時,是用浮點數方式近似表示的,使用decimal則不會損失精度。
在內存中,float與double采用相同的存儲方式,用科學計數法:
float占32字節,包含1位符號位,指數長度占8位,尾數長度占23位;
double占64字節,包含1位符號位,指數長度占11位,尾數長度占52位;
而decimal占128位,與浮點數相比,它的指數部分是十進制數,可以準確表示十進制,但數值範圍較小,與浮點數相互轉換時可能溢出。decimal的運算速度也較慢。
對於數據庫的decimal類型,decimal(4,2)表示一共4為,小數位占2位。如果將13.456寫入decimal(4,2),會保存為13.46,最後多余的小數位四舍五入;如果嘗試將134.56寫入,會報溢出錯誤。
日常問題總結 三