DOT NET 變數宣告

2013-09-09

.NET 變數宣告方法和注意事項

 

MD5 / sha1 加密解密

Imports System.IO Imports System.Text Imports System.Security.Cryptography Public Class Crypto Private Shared DES As New TripleDESCryptoServiceProvider Private Shared MD5 As New MD5CryptoServiceProvider Public Shared Function MD5Hash(ByVal value As String) As Byte() Return MD5.ComputeHash(ASCIIEncoding.ASCII.GetBytes(value)) End Function  
'加密 Public Shared Function Encrypt(ByVal stringToEncrypt As String, ByVal key As String) As String DES.Key = Crypto.MD5Hash(key) DES.Mode = CipherMode.ECB Dim Buffer As Byte() = ASCIIEncoding.ASCII.GetBytes(stringToEncrypt) Return Convert.ToBase64String(DES.CreateEncryptor().TransformFinalBlock(Buffer, 0, Buffer.Length)) End Function  '解密
Public Shared Function Decrypt(ByVal encryptedString As String, ByVal key As String) As String Try DES.Key = Crypto.MD5Hash(key) DES.Mode = CipherMode.ECB Dim Buffer As Byte() = Convert.FromBase64String(encryptedString) Return ASCIIEncoding.ASCII.GetString(DES.CreateDecryptor().TransformFinalBlock(Buffer, 0, Buffer.Length)) Catch ex As Exception MessageBox.Show("Invalid Key", "Decryption Failed", MessageBoxButtons.OK, MessageBoxIcon.Exclamation) End Try End Function End Class

 

Application

性質: 全域共享 (跨使用者)
存取: 存放於IIS伺服器記憶體
生命週期: 永遠,直到網頁伺服器重啟或關閉

使用方法:

宣告

寫入文件: Global.asax
Application("變數名稱") = "值"


 

使用

寫入文件: 字定文件.aspx.vb
Application.lock
Application("變數名稱") = "值"

Application.unlock
說明:
由於此變數為全域共用且生命週期是永久的,在變更Application的值之前,必須考慮使用者(用戶端)不會同時間進行變更,已造成變數在更改數值時出現錯誤。因此在變更Application值之前,必須要先加入鎖定動作,讓同時間只有一個變更的動作執行。確定值變更後,在將其變數解鎖,釋放出來給其他人使用。

可用來製作如計數器、或任何需要資料庫存取功能的變數取得操作功能。



 

Cookie

性質: 全域共享 (單一使用者)
存取: 存放於用戶端瀏覽器的Cookie
生命週期: 可自訂到期時間來釋放該SessionID的值,如果沒有設定當瀏覽器關閉後,Session的變數則同時消失

使用方法:

宣告

寫入文件: 自訂文件.aspx.vb (寫入cookie)
Response.Cookies("TestCookie1").Expires = "5/1/2010"
Response.Cookies("TestCookie1").Value = "The cookie stuff."


 

使用

寫入文件: 字定文件.aspx.vb (讀取cookie)
Dim I as integer
   For I = 0 to Request.Cookies.Count - 1
       lblMessage1.Text = lblMessage1.Text  _
           & Request.Cookies.Item(I).Name & ": " _
           & Request.Cookies.Item(I).Value & "<BR>"
   Next
說明:



 

Session

性質: 全域共享 (單一使用者)
存取: 存放於用戶端瀏覽器的Cookie
生命週期: 可自訂到期時間來釋放該SessionID的值,如果沒有設定當瀏覽器關閉後,Session的變數則同時消失

使用方法:

宣告

寫入文件: 自訂文件.aspx.vb
Session("變數名稱") = "值"


 

使用

寫入文件: 字定文件.aspx.vb
Session("變數名稱") = "值"
說明:
由於此變數具有時效性且暫存於瀏覽器內部記憶體,只能針對單一用戶及單一瀏覽器視窗,故無法運用於長時間性的存取動作。

可用於使用者登入時做為資料調動的橋梁




source:
  一、Application
  Application的生命周期与应用程序相同,一定定义了全局变量,如Application[“Count“],那么,当应用程序运行的时候,即网站在运行的时候,该变量就伴随着网站的运行而存在,在网站运行的整个过程,可以在任何地方随时对其进行任何读取与赋值的操作。
  除非服务器关闭或停止网站运行,否则,该变量及其值一定存在。
  Application是一个可大可小的比较重要的保存数据的变量。
  二、Session
  Session的生命周期与网站的每个浏览者相同。
  无论来自哪个地方或什么时候打开你的网站,只要是通过当前打开的浏览器第一次进入到您的网站,那么,服务器端会自动为该浏览者创建一个Session变量,该变量仅针对这个人有效,而对于其它人是无效的,因为,每个浏览者,都分别有一个Session变量。
  每个浏览者的Session会话生命周期,默认情况下,一般为30分钟;当然,站长可以修改生命周期,让其更长或更短,完全由应用程序或站长决定。
  当浏览者的Session超过生命周期,再次对网站服务器进行请求,则,原来的Session将不复存在,服务器将会对其新建一个Session。
  Session是一个轻量级的保存简单数据的变量。
  三、Cache
  Cache的生命周期则由程序决定,即由管理网站的站长来设定,Cache 相对于Application 及Session来说显示更有弹性。
  它允许网站的内容在客户端和服务器端,使用缓存,以达到快速打开网页内容的效果。
  但是有一个缺点,如果网站启用了缓存,那么,打开的页面,不一定能够看到最新的信息。
  四、Cookie
  允许网站将用户的登陆信息等,保存在客户端;当浏览者再次进入网站时,不用进行登陆,程序会自动读取保存在客户端的Cookie变量,如果存在登陆信息,将自动登陆,避免浏览者进行冗余的登陆。
  Cookie是一轻量级的保存简单数据的变量。 其生命周期可长可短,短至几分钟,长达一年以上甚至永久。





字串重新格式
String.Format("{0:d2}",字串)
將變數前面補零,讓他程現為2位數

String.Format("字符串:{0:d5}", 12)
"字符串:00012" '占位5个,不足的用0代替
String.Format("字符串:{0,5}", 12)
"字符串:   12" '占位5个,不足的用空格代替,右对齐
String.Format("字符串:{0,-5}", 12)
"字符串:12   " '占位5个,不足的用空格代替,左对齐
?String.Format("字符串:{0:#,0.0000}", 12)
"字符串:12.0000"
?String.Format("字符串:{0:#0,0.00}", 12)
"字符串:12.00"
?String.Format("字符串:{0:#0,0.00}", 12000)
"字符串:12,000.00"
?String.Format("字符串:{0:D#0.0000}", 12)
"字符串:D12.0000"
?String.Format("字符串:{0:D2.5}", 12)
"字符串:D2125"
?String.Format("字符串:{0:D0.0}", 12)
"字符串:D12.0"
?String.Format("字符串:{0:D0.0000}", 12)
"字符串:D12.0000"
?String.Format("字符串:{0:#00,0.00}", 12000)
"字符串:12,000.00"
?String.Format("字符串:{0:#00,0.00}", 12)
"字符串:012.00"
?String.Format("字符串:{0:#00,0.00}", 1200)
"字符串:1,200.00"
?String.Format("字符串:{0:#000.00}", 1200)
"字符串:1200.00"
?String.Format("字符串:{0:#000.00}", 12)
"字符串:012.00"
?String.Format("字符串:{0:#000.00}", 1)
"字符串:001.00"

Contact

Github

Codepen

歡迎參觀我的賣場
© 2013 Copyright Digishot Web | Design Tools
Visitors【633040】
digishot webdesign studio