http://www.cnblogs.com/imfunny/archive/2011/08/11/2134639.html
因為許多的伺服器特別是廉價的伺服器上使用的是Framework的v2.0.50727。再加上自己開發的算是產品,所以就需要降低一些客戶的前期成本,而自己同時也喜歡簡單的代碼。後來查了下,得知其實Framework3.5也是可以運行在2.0上的。引用System.Core.dll就可以直接的編寫了。在2005下是不行的。因為2005預設的是2.0的編譯器。即使引用了也沒用。
引用後點擊屬性設定下。見啊。這樣就可以在Vs2008上直接使用了。(這些都放到了附件裡,需要的點擊下載串連就行了。)
使用這個有什麼好處呢。
首先就是方法的擴充了。
比如之前的MD5。
?
string dd = Utils.Md5("ddddd"); |
現在通過方法擴充可以寫成這樣
?
var dd =
"ddddd".Encode(Encode.Md5) |
現在的代碼越來越Query風格了。我喜歡。其實就不說了匿名函數,lamda運算式,linq了。
當完成這步的時候編譯之後的Dll已經可以直接在2.0下運行了。
但是在WEB開發的時候。編譯之後在2.0下可以啟動並執行。總不能夠每次修改都要把Dll給全部編譯下。CodeFile在這樣的情況下也是出錯的。因為CodeFile在這個時候還是會出錯的。預設的csc.exe是2.0的。這個時候就簡單了。
把附件的包給解壓出來,點擊附件裡的“取得許可權.reg”,找到目錄C:\Windows\Microsoft.NET\Framework\v2.0.50727,然後右鍵菜單上就有了“取得許可權更改",點擊它。然後把附件下v3.5.rar解壓出來,把v3.5裡的檔案複製替換到v2.0.50727。於是編譯器就更換了。然後點擊“取得許可權卸載.reg”。刪除掉菜單裡的取得許可權的按鈕。
有圖有真相:
XP下應該同樣。就不具體的去測試了。
OK。大工告成,現在一切都是浮雲。剩下的就是去爽了。發布的時候產生DLL直接放到生產伺服器上就行了。一切就那麼簡單啊。剩下的就是用3.5的風格去編寫2.0的程式了。
那撒撒的,上面使用到的工具都整理了下,在附件裡,想使用的直接點擊附件下載吧。
附件下載