[轉貼][ASP.NET] C# 與 VB.NET程式碼互轉

http://itgroup.blueshop.com.tw/topcat/aspx?n=convew&i=6095
 

很多人在網路上找相關的參考資料,都會遇到一個問題,那就是:【我是學VB.NET的,C#的程式碼看不懂。】或者【我是學C#,VB.NET寫的內容我看不懂。】其實這是很可惜的,因為您對於C#或者VB.NET的不熟悉,可能跳過可以解決問題的方法。

其實網路上有很多的資源,可以幫C# 與 VB.NET 的程式碼互轉。當然,不見得所有的轉換後都可以使用,不過經過轉換後,多多少少可以讓自己能夠閱讀別人程式碼。並且試過一個不行,可以再試第二個轉換的服務。

小喵列出幾個提供線上轉換服務的網址

有需要的可以去試試看

更多的資源可以自己到Google去搜尋【C# 轉 VB.NET】這樣的關鍵字

 

http://www.developerfusion.com/tools/convert/csharp-to-vb/

http://www.kamalpatel.net/ConvertCSharp2VB.aspx

http://www.dotnetspider.com/convert/Csharp-To-Vb.aspx

以上資訊提供大家參考

^_^

[轉貼][ASP.NET]ViewState、Session、Cookies、Application State比較

http://www.dotblogs.com.tw/hatelove/archive/2009/06/28/viewstate-session-cache-cookies-application-of-user-state.aspx

簡單整理一下重點:

  1. ViewState
    • ●只存在於正在執行那一頁,通常用於postback記值(因為http無狀態)
    • ●原理是HTML上的hidden field,會透過Base-64編碼
    • ●webconfig裡可以透過設定來加密:
    • ●通常server control會透過viewstate來保存其屬性值,也是傳統ASP.NET web form重整頁面最容易碰到的效率問題。可透過EnableViewState屬性開關。
    • ●可存放可序列化的Object (一般程式用到普遍最大的應該也只是hash table )
  2. Session
    • ●可存在於該連線,不同頁面,通常用來跨多頁傳些比較重要、需要安全的值。如果是前後頁面關連性的值,只需要用URL parameter即可。Session的意義比較像是在什麼樣的情況下,開始或變更了某個Session的值。
    • ●類似跨網頁的全域變數
    • ●佔用Server端記憶體,連線數量一暴增,記憶體很可能被操掛。
    • ●預設存在記憶體裡,可以改存在Session State ServerDB(如果放在Session State Server或者DB,存放的物件也必須是可序列化的)
    • ●可設定存活時間,但發生錯誤或特定情況時,會導致Session遺失,請參考:[ASP.NET]Session遺失的幾種可能
  3. Cookies
    • ●單一使用者,存在client端,讀的到就活著。
    • ●需注意安全性考量,通常用在個人化portalprofile
    • ●有些single sign on會透過cookie(加密)來存放帳號資訊。
    • ●String格式存放。
  4. Application
    • ●在Server上所有User存取同一份。
    • ●當Web application重起或關閉時結束。
    • ●吃Server記憶體。
  5. Cache
    • ●吃Server記憶體。
    • ●可設定時間、hit rate或先進先出來當作條件。
    • ●通常應用在靜態網頁快取。

[SQL]取得剛新增資料的自動編號

程式中,你欲於「新增」後取得當前記錄之id

  font-family:細明體;color:#A31515;”>"select max(news_id) news_id from
mns_news"

color:#A31515;”>此方式在多人同時線上維護時,有少數機率可能會出錯,不建議這麼樣來規劃

 請參考網頁修改程式:

 [MSSQL]取得剛新增資料的自動編號

http://www.dotblogs.com.tw/ajun/archive/2008/04/01/2504.aspx

 

IDENT_CURRENTSCOPE_IDENTITY@@IDENTITY 差異對照表

http://www.dotblogs.com.tw/hunterpo/archive/2009/09/04/10421.aspx

 

 SqlDataSource Insert()成功後取得自動編號

 http://social.msdn.microsoft.com/Forums/zh-TW/6b18e4f0-53f2-43d2-955a-88e0e2017a49/sqldatasource-insert

[轉貼]Recordset函數

http://skyfoxmis.pixnet.net/blog/post/25618805-recordset-%E5%87%BD%E6%95%B8

RecordSet.Fields.Count 傳回Recordset中的欄位數。

RecordSet(i).Name 傳回Recordset中第i個欄位的名稱。

RecordSet.RcordCount 傳回Recordset中資料錄的筆數。

RecordSet(i) 傳回RecordSet目前紀錄中的第i個欄位資料。

RecordSet.BookMark 傳回設定的書籍資料以儲存現在紀錄的位置。

RecordSet.AbsolutePostition 將指標移致RecordSet中的某一筆資料上。

RecordSet.PageSize 設定每頁顯示的資料筆數。

RecordSet.PageCount 傳回分頁後的總頁數。

RecordSet.AbsolutePage 傳回目前所在的頁數。

RecordSet("欄位名稱") 傳回指定欄位名稱的資料內容。

RecordSet.BOF 判斷指標是否超過最前面。

RecordSet.EOF 判斷指標是否超過最後面。

RecordSet.MoveFirst 將資料錄指標移至第一筆。

RecordSet.MoveLast 將資料錄指標移至最後一筆。

RecordSet.MoveNext 將資料指標往後移一筆。

RecordSet.MovePrevious 將資料指標往前移一筆。

RecordSet.GetRows 可將Recordset中的資料儲存至陣列中。

RecordSet.AddNew 新增資料至資料表中。

RecordSet.Update更新目前這筆資料。

RecordSet.Delete 刪除目前這筆資料。

RecordSet.Find 尋找資料值。

天下烏鴉一般黑 台灣的電信產業(慘業)

相信 行動網路速度慢 已不在話下…

使用至今 對於行動數據的方案 更是令人氣憤萬分

以個人我使用量來說 極限使用量不會大於 2.5GB 卻被迫一定要去玩他的吃到飽…

因為吃到飽的下面一個資費方案 盡然只是1G…這很靠腰耶… 1G 跟 吃到飽差多少… 百來元…

這根本是貢潘阿…算到這種程度的精 就是逼人半吃到飽… 品質呢?… 請看第一句話!

從有3G行動網路後 簡訊 語音 等等 使用量直線下降阿(汗)

不過我一點也沒感受到不賺…看那精美的電信公司便地開花…

台灣的網路費用 真的是夭壽貴 夭壽慢 … 
 說好的吃到飽 我車從台北到林口了 我網頁還在開不太起來… 爛透了-_- 室內收訊還近乎於0…

話說也奇怪 阿我電話講起來也沒感覺會lag … 掯

[轉貼]vmware擴充硬碟大小

http://life.iiietc.ncu.edu.tw/xms/content/show.php?id=23707

 在vmware,如果當初給的虛擬硬碟太小,之後想再擴充硬碟,可以執行以下指令。
cd C:\Program Files\VMware\VMware Workstation\
vmware-vdiskmanager.exe -x 12GB "E:\MyVMW\Windows XP Professional.vmdk"

註:

C:\Program Files\VMware\VMware Workstation\  是安裝vmware的資料夾,如果是使用預設的安裝路徑應該就是這個,如果不是用預設安裝路徑,就請各位同學改成你安裝的路徑。
12GB就是最後硬碟空間大小,而不是希望增加的空間。
E:\MyVMW\Windows XP Professional.vmdk 是存放虛擬硬碟的路徑。

[轉貼] 讓工作列上的按鈕不顯示最近開啟的項目(Windows 7)

http://www.soft4fun.net/tips/%E8%AE%93%E5%B7%A5%E4%BD%9C%E5%88%97%E4%B8%8A%E7%9A%84%E6%8C%89%E9%88%95%E4%B8%8D%E9%A1%AF%E7%A4%BA%E6%9C%80%E8%BF%91%E9%96%8B%E5%95%9F%E7%9A%84%E9%A0%85%E7%9B%AE%EF%BC%88windows-7%EF%BC%89.htm

「最近開啟的文件」這個功能在 XP 就有許多網友反應想把它關掉,當時我也發表了XP關閉這個功能的方法。最近升級到 Windows 7後,這個問題又出現了… 只不過名稱變成「最近開啟的項目」

win7-01

「最近開啟的項目」雖然可以讓你快速開啟檔案,但如果是在公用電腦上,有時不想讓他人知道自己瀏覽了哪些項目,因此得停止系統繼續紀錄,並刪除紀錄。在Windoows7中,關閉「最近開啟的項目」的設定方法很簡單,兩個步驟就可以完成:

Step 1

在開始功能表上按「滑鼠右鍵」→【內容】

win7-02

Step 2

切換到〔[開始]功能表〕標籤,將「儲存最近開啟的項目並顯示於[開始]功能表和工作列」取消溝選→按〔確定〕完成設定。

win7-03

完成設定後,你會發現最近開啟的紀錄都消失了。

[資料庫] MS SQL DD製作


Declare @bastable Varchar(50)
Set @bastable = '[TableName]'

select 
    dt.name [Table_name] , C.name [Column_name] , 
    case
when T.name in ('datetime', 'smalldatetime', 'int', 'smallint') then T.name
when T.name In ( 'numeric' ) then T.name + '(' + CAST(ISNULL(C.prec, C.length) AS varchar(50)) + ',' + CAST(C.scale as varchar(50) ) + ')'
when T.name In ( 'nvarchar' ) then T.name + '(' + CAST(C.length/2 AS varchar(50)) + ')'
else T.name + '(' + CAST(C.length AS varchar(50)) + ')'
    end [Type] ,
    T.name [ColType],
    case
when T.name in ( 'int', 'smallint' , 'tinyint' ) then 'Int32'
when T.name in ( 'smalldatetime', 'datetime' , 'datet' ) then 'DateTime?'
when T.name in ( 'bit' ) then 'Boolean'
when T.name in ( 'real' ) then 'float'
else 'String'
    end [C#Type],
    case
when T.name in ( 'int', 'smallint' , 'tinyint' ) then 'Convert.ToInt32'
when T.name in ( 'real' ) then 'Convert.ToSingle'
when T.name in ( 'smalldatetime', 'datetime' , 'datet' ) then 'MyConvert.ToDateTime'
when T.name in ( 'bit' ) then 'Convert.ToBoolean'
else 'Convert.ToString'
    end [C#Type],
    case
when T.name in ( 'int', 'smallint' , 'tinyint' ) then 'GenSqlStr.DataType.Int'
when T.name in ( 'real' ) then 'GenSqlStr.DataType.Float'
when T.name in ( 'smalldatetime', 'datetime' , 'date' ) then 'GenSqlStr.DataType.Datetime'
when T.name in ( 'bit' ) then 'GenSqlStr.DataType.Int'
when T.name in ( 'nvarchar' ) then 'GenSqlStr.DataType.NVarchar'
else 'GenSqlStr.DataType.Varchar'
    end [C#SQLType],
    case
when T.name in ( 'nvarchar' , 'varchar' , 'char' ) then '=String.Empty;'
when T.name in ( 'int', 'smallint' ) then '=-1;'
when T.name in ( 'tinyint' ) then '=0;'
when T.name in ( 'real' ) then '=0;'
else ';'
    end [C#SQLType2],    
    convert(varchar(100) ,P.value)  [Desc1]
From (
  select id
, name
  from
  sys.SysObjects
  where
  xtype = 'U' ) dt
Left Join sys.SysColumns C On C.id=dt.id
Left Join sys.extended_properties P On C.ID=P.Major_Id And C.ColId=P.Minor_id
Left JOIN sys.SysTypes T ON C.xtype = T.xusertype
Where dt.name = @bastable
order by C.colorder