琉璃網站
CommunityServer BlogEngine.Net 中文技術社群網站

June 2007 - mirror

  • Developers, Are You Underpaid Or Overpaid?

    Phil Haack 寫了一篇探討開發人員產能差異的 好文章 。可能是因為自己瘋狂熱愛Coding,一直以來對許多客戶、專案經理、公司主管貶低開發人員價值的錯誤認知頗不以為然,於是,這類的文章讀來格外心有戚戚焉。 對開發人員的種種誤解中,我最痛恨的是以下幾種: 1) 為什麼寫一個線上購物網站要花五十萬? 我小姨子的同事唸高中的兒子說給他五萬元就可以搞一個! 2) 每年多少資管畢業生呀? 程式開發人員去街上抓就一大把,還怕找不到人? 3) 不過就寫程式唄! 找誰來寫還不都一樣? 你專案不是缺人,為什麼不叫隔壁組現在沒事的老王加入你的Team...
  • Introduction To .NET Regular Expression

    試想以下的情境: 公司最近要研發一套類似Google的網頁搜索引擎,你負責開發網頁擷取器核心,其中最棘手的部分是要具備由一個網頁再延伸至其所超連結出去的其他網頁… 行銷人員拿來一份十萬筆客戶地址檔,請你解析出縣市、郵遞區號、地址三個欄位轉入CRM系統,但要命的是原始資料雜亂不已,有的郵遞區號在前,有的在中間… 你加入了檢索引擎過濾器(Filter)的開發團隊,目標是將各式資料檔中的純文字部份提取出來,你的第一件任務是簡單的HTML檔案解析,但是,HTML原始碼千變萬化… 以上的挑戰當然不是每位程式開發者都有機會遭遇...
  • TIPS-Conversion Between enum, int And string

    .NET中的 Enumerate 可以提高程式的嚴謹性及可讀性,我最愛的一個例子是DateTime的 DayOfWork Enumeration。 if (DateTime.Now.DayOfWeek==DayOfWeek.Friday) 是不是比 DateTime.Now.DayOfWeek==5 更容易閱讀呢? 而當要求使用者傳入星期幾作為參數時,也不必擔心User傳入-1 或18來搗蛋。 不過,在某些時候,我們還是需要將星期三轉成數字3,或是將"Sunday"解讀成為DayOfWeek...
  • KB-Connection Closed Exception of FtpWebRequest

    幾天前我寫了一篇 Post 介紹如何用 System.Net.FtpWebRequest 開發一個支援續傳功能的FTP Client。 在專案中開始使用它來傳大檔時,卻發現不知FtpWebRequest是不是為了炫耀它的續傳功能,在花了半小時傳完一個400MB的ZIP檔之後,都會觸發一個" The underlying connection was closed: An unexpected error occurred on a receive ."的Exception,但是檔案的大小正確...
  • KB-FtpWebRequest.Timeout Default Value

    用FtpWebRequest下載大檔案時,出現了Connection Closed Exception,除錯過程中懷疑是逾時間題,所以我找到FtpWebRequest有以下兩個Timeout相關屬性: Timeout : 指完成Request的逾時限制,文件上說預設值是Infinite(-1),永不逾時。 ReadWriteTimeOut : 每次寫入或讀取Stream動作所允許的Timeout。 文件說Timeout的預設值是無限大,但為了謹慎起見,我還是進入Debug Mode,看了FtpWebRequest...
  • TIPS-Remember User's Preference with Cookie

    在Key單UI的實務上,有個有趣的現象。假設Key單Web介面中有個下拉選單(DropDown, <SELECT>),張三因為承做甲業務,所以永遠都選第三個選項,而李四較常在處理乙業務,所以總是選第五個選項。如果介面在顯示時可以預設就停在使用者最常用的選項上,每次Key單時就可以少敲幾次鍵。 此時有幾種設計方法: 第一種是建立User的Profile,由其負責的業務來判斷預設選項,再不然就是開放User設定自己偏好的預設選項。我個人更偏好一種更直覺更簡單的做法---用Cookie記住User上回選什麼就好了...
  • TIPS-Design A Mouseless Web UI

    經歷過DOS->Windows轉換的老人家們應該不會忘記第一次踏著滑鼠在視窗上衝浪的莫名感動,一樣是打電腦,用滑滑點點取代一長串按鍵,感覺就是不一樣,一瞬間,人生彷彿由黑白變彩色~~~ 隨著GUI視窗化介面的普及,大部分的開發者開始認定充分使用滑鼠才是最人性化的界面設計方式,但是世界上有一群人持著不一樣的看法。 滑鼠操作的動作範圍較小,2D空間定位的直覺性是鍵盤無從取代的,但這仍無法改變我們必須依賴鍵盤輸入文字的事實。當你被要求每天輸入幾百上千筆相似的資料,若輸入幾個字元就要滑一下滑鼠,意味著每幾秒鐘需轉動手肘將手掌從鍵盤移駕到滑鼠背上...
  • 囧字恆久遠,一"刻"永流傳

    "囧"(音炯,說文解字 在此 )這個字在中國字典裡沈睡了幾千年,最近這幾年才托網路 火星文 的福,火熱了起來,連七年級、八年級生都能朗朗上"手"。我打睹全宇宙裡99.999...%的時間這個字都是以電子資料形式存在,只有千萬分之一的比率是出現在古文史籍的紙本中,那麼被刻在石碑上的機率有多高? 應該低於十億分之一吧!? 我遇到了!! 在古碑上跟囧字相見歡,真是特殊的經驗... 讀取更多...
  • 【茶包射手專欄】Why Bind("Blah") Doesn't Work?

    寫TemplatedControl時,ASP.NET 2.0有個好用的新函數 Eval ("FieldName"),可以在DataGrid、GridView等物件的Template Column中,將DataItem中某個欄位的值指定給Label、TextBox之類的;在ASP.NET 1.1時代,這得寫成DataBinder.Eval(Container, "DataItem.FieldName"),相較之下,新寫法簡潔多了! 我查到大陸朋友寫的一篇 精彩文章...
  • KB-IE Operation Aborted

    1: < html >< body > 2: < img src ="banner" > 3: < table > 4: < tr >< td > First Line </ td ></ tr > 5: < tr >< td >< input type ="text" name ="txt1" > 6: <...
  • TIPS-Implement a Resumable FTP Download with .NET 2.0

    最近手上的案子需要以FTP方式取回數百MB到上GB的ZIP檔案,過去我的做法會一個登入及下載的Script,作為FTP command line utility的輸入來源,再以Shell方式啟動,如以下的例子: 1: //產生FTP Script檔案 2: string ftpScriptFile = Server.MapPath( "TempFolder\\ftp.script" ); 3: Process p = new Process(); 4: StreamWriter...
  • KB-Transaction Error When Query Oracle Database Links

    同事遇到一個狀況,使用OleDbCommand查詢ORACLE上的Database Link時,系統回報以下錯誤: ORA-02041: client database did not begin a transaction Goggle了一下,發現問問題的人挺多的,但回答很分歧,沒法一下子得到正解。反覆測試後,我得到的結論如後。 當使用Oracle Database Link時,因涉及兩台以上的Oracle Server,自動啟用Distributed Transaction可以被理解(SQL...
  • Microsoft SMTP Service Mini FAQ

    Microsoft SMTP Service是從NT時代就有的實用服務,陽春歸陽春,拿來當作網站系統派送通知的服務綽綽有餘。這幾年下來,陸續有些處理SMTP Service的經驗,在此以FAQ的方式做個分享。 1.為什麼我的信寄不出去? A: 寄信Client多半會要求輸入SMTP Server IP、Port Number等資料。有些人會抱怨明明就設好127.0.0.1的25 Port,使用Telent 127.0.0.1 25的方式也可以連線成功,但信就是寄不出去。 最常見的理由是SMTP Service的Mail...
  • KB-ScriptTimeout! Then?

    "當ScriptTimeout發生時,ASPX會繼續執行? 還是嘎然而止?" 以上問題的答案將牽動IIS的調校哲學,當系統發生問題時而導致大量Request處理逾時,調整ScriptTimeout的長短,會產生何種效應? 在過去的印象中,如果使用者開啟一個要執行很久的ASP/ASPX程式,在程式未執行完成之前,使用者關閉瀏覽器時,ASPX仍會繼續跑完,不受與使用者間連線中斷的影響。我用以下的Code進行驗證... 1: private void writeLog( string...
  • TIPS-Server.ScriptTimeout & <httpRuntime executionTimeout >

    為了進行一些效能實驗,我試著要將ScriptTimeout的時間縮短,並故意用Thread.Sleep來製造Timeout。 1: protected void Page_Load( object sender, EventArgs e) 2: { 3: //Set ScriptTimeout = 5 sec 4: Server.ScriptTimeout = 5; 5: //Sleep 20 seconds 6: System.Threading.Thread.Sleep(20000); 7:...
Copyright 2010 琉璃網站 , 本站採用 CommunityServer 2008.5 為社群平台
Telligent 贊助台灣區 .Net DCP partner
各圖片與商標為各廠商所有,轉載本站圖文內容須需註明出處網頁