將CKEditor.NET和CKFinder.NET封裝成一個控制元件

iteye_21202發表於2013-05-15

如題,直入主體:

1、去CKEditor官方網站下載CKEditor.NET和CKFinder.NET兩個控制元件。

2、新建一個類庫工程,並引入相應的程式集,在專案中新建CKEditor.NET和CKFinder.NET兩個資料夾,並把相應類庫中的檔案直接拷貝到這兩個資料夾中,注意不要更換命名控制元件,一切預設即可。(原因很簡單,就是在這些控制元件如檔案上傳時,是原來的命名控制元件,如果更改了,這些檔案所引入的名稱空間將要修改,這是個很龐大的工程,不要去想了。)

3、在AssemblyInfo.cs檔案新增標記字首,這個的作用是,單託控制元件的時候前面不會顯示什麼cc1:xx這樣的,而是你取得名字,要好看才行的。

1 [assembly: TagPrefix("CKEditor.NET", "CKEditor")]
2 [assembly: TagPrefix("CKFinder", "CKFinder")]


這樣就全部封裝完了,我這樣封裝一個類庫的好處是,在專案中使用不要引用多個不同的類庫,直接一個搞定,非常的方便。

最後是如何在專案中配置這兩個控制元件了:
1、拷貝ckeditor、ckfinder兩個資料夾在根目錄上,引入ComControl類庫,並在工具箱中新增此類庫,即可實現拖拉控制元件。
2、如果改變了目錄,則修改ckeditor/config.js檔案路徑,ckeditor檔案包已經整合了檔案上傳ckfinder的功能,目錄配置也是在ckeditor/config.js裡,改變了預設路徑請修改此處地方。ckfinder也是如此,改變了預設路徑請修改ckfinder/config.js。
3、ckfinder預設上傳路徑在ckfinder/userfiles中,如果改變預設路徑,請修改ckfinder/config.ascx檔案中的SetConfig()方法。
4、ckfinder上傳的資料夾必須有可寫的許可權。
5、ckfinder/config.ascx中的CheckAuthentication()方法預設為true,當正式專案部署時,要根據許可權判斷返回bool。因為預設為true時,任何人都能得到上傳資料夾的可寫操作,當有人知道了這個控制元件的路徑時,後果將非常嚴重。

附件在百度雲 網盤裡面

相關文章