VS2010 ReportViwer 設定Tablix的RepetaterColumnHeaders為True,仍無法在每一頁重複標頭資料行?

2012年6月19日 星期二

今天利用Report Viewer工具做報表時遇到了,在做分頁時我想要固定表頭,設定了Tablix工具的RepeatColumnHeaders=True及RepateRowHeaders=True相關屬性都設定了,但是標頭永遠都只會固定在第一頁,google一下原來這是此項工具的Bug。


找到的解決方法:
在.rdlc的Xml原始檔案裡加入
RepeatOnNewpage



  
          
      After
      true //加入此設定
    
  


參考網址:http://blog.csdn.net/xfblue/article/details/6550632

Read more...

VMware 無法開啟 出現Exception 0xc0000006 (disk error while paging) has occurred.訊息

2012年6月17日 星期日

今天上班開VM 時發現無法開啟,出現以下訊息:

 VMware Workstation unrecoverable error: (vmx) Exception 0xc0000006 (disk error while paging) has occurred. A log file is available in "D:\VMPlayer\vmware.log". A core file is available in "D:\VMPlayer\vmware-vmx-2184.dmp". Please requst support and incl? the contents of the log file and core file. To collect data to s mit to VMware support, select Help > About and click "Collect Support Data". You can also run the "vm-support" script in the Workstation folder directly. We will respond on the basis of your support entitlement. 

 解決方法為:
 刪除或修改虛擬機目錄下拓展名為.vmss文件,再次啟動即可,即系統關閉後啟動。


後記:經過這樣的處理就可以了,呼...真是虛驚一場,之前一直想說VM應該是穩定性很高的產品,還是平常要做好備份以晚發生這樣的問題囉!!

Read more...

CustomValidator自訂驗證控制項

2012年6月10日 星期日

目前驗證控制項有很多,其實大部份都可以應付一般的需求,但是總是會有特別的需求,這時候就需要用到自訂驗證控制項了(CustomValidator),自訂驗證控制項可以在Client端及Server端做驗證。

接下來就以驗證mail格式實例在說明吧

1.Client端做驗證
以下是我先建立好一個TextBox以及一個必填欄位驗證(RequiredFieldValidator),都要驗證mail格式所以一定要是必填欄位,第二個證驗我加入了自訂驗證(CustomValidator)。
屬性設定說明
controltovalidate:需要驗證哪一個控制項的設定,此屬性一定要設定否則會報錯
errormessage:不通過的錯誤訊息
clientvalidationfunction="CheckMail": 要做自訂驗證的function名稱,這裡要填的是Client端的function名稱。
function裡面的驗證是在網路上找來的正規式驗證,做好這樣的設定就大功完成啦!!
在function裡面的接受參數source, args都是跟ASP.NET的驗證控制項用法一樣喔。





mail:



    


2.Server端做驗證
屬性設定說明
與Client不同之處在於,onservervalidate設定。
後端驗證裡的args.IsValid為回傳的驗證結果。

後端cs Code
    protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
    {
        if (CheckMail(args.Value) == false)
        {
            args.IsValid = false;   //驗證結果
        }
    }

    private bool CheckMail(string ck_string)
    {
        //加入驗證內容

        return true;
    }
以上就可以做到前/後端一起驗證輸入的資料是否正確,好的驗證控制項可以阻擋垃圾資料的輸入,造成資料庫的負擔,所以這是很重要的喔!!

Read more...

== 與 === 的差異

2012年6月4日 星期一

這是javascript很特別的地方

var str="";
var boo=false;

if(str==boo)
{
  alert(true);
}
else
{
  alert(false);
}
以上程式結果為true 但是如果把程式修改成
if(str===boo)
{
  alert(true);
}
else
{
  alert(false);
}
則結果為false 這是因為三個等於是精確的比對,他連型態也會一起比對。

Read more...