2014年11月20日

Can not find "Aspose.Cells.lic"

在用 .NET MVC做 ReportViewer的 PDF/Excel 輸出浮水印時

發生 OBSR環境的 Excel產出有 error (0 byte)
查到 log是寫 Can not find "Aspose.Cells.lic" ...

看了一下 OBSR跟 SIT01的佈置
OBSR的資料夾底下有放 "Aspose.Cells.lic",SIT01沒有
但是 SIT01沒問題反而是 OBSR有問題??

最後發現是 OBSR Aspose.Cells.lic檔案的屬性 Build Action沒有改成 Embedded Resource

問題找到了,收工!

ref: 

2014年10月2日

json轉 GUID字串檢核格式不嚴謹

foreach (object obj in args)
{
    if (obj == null)//需過濾參數=null
    {
        continue;
    }
    else if (obj.ToString().Length == 38 && obj.ToString().IndexOf("-", 0, 10) == 9)
    {
        activityId = JsonConvert.DeserializeObject<guid>(obj.ToString());
        break;
    }
    else if (obj.ToString().Length == 36 && obj.ToString().IndexOf("-", 0, 10) == 8)
    {
        activityId = Guid.Parse(obj.ToString());
        break;
    }
}

然後人家輸入一個剛好長度 38的字串,第一個 - 又剛好在第十個字元 就死了


原本我是想到用 regular expression做檢核
想了一串的 regex
Regex regGuid = new Regex("[{(]?[a-zA-Z0-9]{8}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[]{12}[})]?");

後來看到別人提供的做法
foreach (object obj in args)
{
    if (obj == null)
    {
        continue;
    }
    else if (Guid.TryParse(obj.ToString(), out activityId))
    {
        break;
    }
}

只是要注意 tryparse失敗的話 guid會被填成 Guid.Empty

2014年9月1日

[VS] 加入網域後 專案 load failed (沒有在 IIS建立虛擬目錄的權限)


控制台 => 使用者帳戶 => 讓其他使用者可以存取這部電腦
新增使用者(網域帳戶) 群組設為系統管理員
重新開機

打開 IIS檢查

2014年7月15日

解決 Visual Studio載入時發生錯誤 您必須在使用系統管理員帳戶的環境中執行Visual Studio,才能 ... blahblah

因為 Url已經在 IIS被綁定
所以需要移除 binding

開啟 powershell執行以下程式碼(或以記事本存成 .ps1檔案後執行)


$appCmd = "C:\Program Files (x86)\IIS Express\appcmd.exe" 

$result = Invoke-Command -Command {& $appCmd 'list' 'sites' '/text:SITE.NAME' } 
for ($i=0; $i -lt $result.length; $i++) 
{ 
    Invoke-Command -Command {& $appCmd 'delete' 'site'  $result[$i] } 

}
如果有註冊表問題,依照提示訊息至 regedit修改

2014年3月3日

jqGrid Reload

jQuery("#list2").jqGrid('setGridParam',{data: json_History}).trigger("reloadGrid");

jQuery("#list2").jqGrid('setGridParam',{url:"server.php?q=2"}).trigger("reloadGrid");
reference
    jqGrid: Reload Local Data or Url Data

2014年1月14日

開發注意事項

Log裡面個資是否為明碼

text Log => Web、AP Server => 都應該依子系統(大分類)分資料夾

找回 密碼  http://my.oschina.net/zhengyun/blog/192693

(管) 確認每個功能會用到的 API  當 API有修改時,通知所有會用到的功能的負責工程師

難字 post AllowHtml

2014年1月9日

null.Equals(string) v.s. string.Equals(null)

errorMessage.Equals("系統錯誤")
比較好的方式:
"系統錯誤".Equals(errorMessage)

可以預防 errorMessage為 null時出 exception

看到問題了 以後怎麼預防

Terry Chien
    看到遠通 web server被駭
    mail詢問怎麼預防

Jonathon
    通行費 errorMessage null 
    佈版流程
    以後怎麼預防
    Jerry: check-in > 上 uat > user 測試 > 上 prod
             緊急佈版  要先跟 user講沒有測

2014年1月8日

讀取檔案 中文字處理

最近在處理文字檔的時候  遇到比對每一行的長度時  如果該行中有中文字存在  長度取得就會出錯
用 Substring取字串時也會取錯位子

需要在讀檔時指定用 BIG5編碼
處理字串的時候要加用 GetBytes().ToString

File.ReadAllLines(filePath, Encoding.GetEncoding("BIG5"))
...
...
...
byte[] sContentByte = Encoding.Default.GetBytes(line);

string tmp = Encoding.Default.GetString(sContentByte, 11, 22)