吳新剛
摘要 在實(shí)踐的基礎(chǔ)上提出利用VSTO實(shí)現(xiàn)Office操作技能水平自動(dòng)評(píng)測(cè)的方法,給出Office操作題的存儲(chǔ)結(jié)構(gòu)和具體的評(píng)測(cè)方案與算法實(shí)現(xiàn)。
關(guān)鍵詞 Office;自動(dòng)評(píng)測(cè);VSTO
中圖分類號(hào):TP317.1 文獻(xiàn)標(biāo)識(shí)碼:B 文章編號(hào):1671-489X(2009)33-0077-02
Automatic Evaluating Method for Office Operating Skills based on VSTO//Wu Xingang
Abstract In practice, it provides a new automatic evaluating method for office operating skills based on VSTO; gives the storage structure and specific programs and algorithms.
Key words Office; automatic evaluating; VSTO
Authors address Dept. of Education Technology, Nanjing Normal University, Nanjing, 210097, China
1 VSTO簡(jiǎn)介
長(zhǎng)期以來,Office解決方案的開發(fā)都是使用VBA(Visual Basic for Applications)和ActiveX,但是由于它們?cè)谟脩艚缑妗⒉渴鸷桶踩缘确矫娴南拗?Microsoft公司提出新的開發(fā)技術(shù):基于.NET Framework的VSTO。VSTO是Visual Studio Tools for the Microsoft Office System的縮寫。簡(jiǎn)單地說,VSTO就是將Microsoft Office Professional 2003和Microsoft Visual Studio.NET結(jié)合起來的新型工具,也可以說VSTO是VBA技術(shù)的.NET平臺(tái)化。VSTO是Visual Studio.NET的一個(gè)插件,使用Visual Studio.NET的開發(fā)環(huán)境,這使得VB.NET或C#的開發(fā)人員可以在其熟悉的編程環(huán)境下編寫基于Office的解決方案。VSTO運(yùn)行的是由CLR管理的托管代碼,同VBA管理的非托管代碼比較,VSTO的解決方案具有更高的安全性和更豐富的部署模式。VSTO讓程序設(shè)計(jì)者可以用Visual Studio來定制Office應(yīng)用程序,可以使用.NET Framework的所有安全特性??傊?VSTO就是一個(gè)強(qiáng)大的、靈活的安全模型。
2 Office操作題存儲(chǔ)結(jié)構(gòu)設(shè)計(jì)
Office操作題的存儲(chǔ)結(jié)構(gòu)是整個(gè)自動(dòng)評(píng)測(cè)方法的基礎(chǔ),是對(duì)技能水平自動(dòng)評(píng)分的關(guān)鍵。本方案中的存儲(chǔ)結(jié)構(gòu)(以Excel為例)如表1所示。
考點(diǎn)的描述采用“標(biāo)記名|考核點(diǎn)”的格式,在每個(gè)Excel考題中要求進(jìn)行操作的位置,事先已利用VSTO的SmartTag在初始化文檔和答案文檔中都設(shè)置一個(gè)名稱相同的隱藏智能標(biāo)記,這些智能標(biāo)記是在出題時(shí)由出題人員設(shè)定的。Excel文檔的操作對(duì)象主要為單個(gè)單元格/單元格區(qū)域、行、列、邊框、底紋、字體、圖表、工作表圖表。以字體為例,其考核的知識(shí)點(diǎn)包含字體、字號(hào)、加粗、傾斜、下標(biāo)、上標(biāo)、刪除線、下劃線、陰影、顏色。
3 基于VSTO的自動(dòng)評(píng)測(cè)方案
同利用VBA創(chuàng)建Office解決方案相比,基于VSTO的Office解決方案顯得更加快捷和安全。首先,VSTO提供的編程模型擴(kuò)展了Word和Excel的一些公共對(duì)象,這些對(duì)象已具備數(shù)據(jù)綁定的能力。VSTO編程模型背后的理念是把數(shù)據(jù)及其表現(xiàn)形式分離開來,不用在文檔里查找顯示這些數(shù)據(jù)的對(duì)象,就可以直接訪問存儲(chǔ)在數(shù)據(jù)源里的數(shù)據(jù)。VSTO提供的數(shù)據(jù)緩存功能無需在服務(wù)器上運(yùn)行Word和Excel,就可以直接訪問文檔里的數(shù)據(jù)。其次,在VSTO中為Word和Excel創(chuàng)建智能標(biāo)記更簡(jiǎn)單,使用提供的SmartTag類可以通過指定要識(shí)別的術(shù)語(yǔ)(term)和識(shí)別出來術(shù)語(yǔ)時(shí)要執(zhí)行的操作(action)。在安全和部署方面,VSTO使用.NET Framework的代碼訪問安全功能(Code Access Security,CAS),通過諸如代碼的位置、代碼是否經(jīng)過簽名以及管理員所設(shè)置的權(quán)限等標(biāo)準(zhǔn)來判斷代碼是否安全。下面以Excel操作題的自動(dòng)評(píng)測(cè)為例,給出利用VSTO的自動(dòng)評(píng)測(cè)方案。
3.1 命題流程設(shè)計(jì)如圖1、圖2所示,為了實(shí)現(xiàn)自動(dòng)評(píng)測(cè),出題人員需根據(jù)題目要求將相應(yīng)的標(biāo)準(zhǔn)答案文檔(doc、xls)上傳至數(shù)據(jù)庫(kù)中。在出題的過程中出題人員可以選擇考核的知識(shí)點(diǎn),操作類函數(shù)將根據(jù)出題人員選定的考核知識(shí)點(diǎn),在初始化文檔和答案文檔中設(shè)置一個(gè)名稱相同的智能標(biāo)記,該標(biāo)記是評(píng)測(cè)的依據(jù)。
3.2 評(píng)測(cè)流程設(shè)計(jì)如圖3所示,1)根據(jù)試題號(hào),讀取“標(biāo)記名|考核點(diǎn)”信息;2)調(diào)用相應(yīng)類的方法,依據(jù)“標(biāo)記名|考核點(diǎn)”,在考生作答文件的智能標(biāo)記位置獲取對(duì)象模型及其屬性值;3)按照每個(gè)考核知識(shí)點(diǎn)將考生文件與標(biāo)準(zhǔn)答案文件逐一比較;4)標(biāo)準(zhǔn)文檔和考生作答文檔中考核對(duì)象的屬性若相同,則記該考核項(xiàng)相應(yīng)分值,若不同,則記0分。
參考文獻(xiàn)
[1]楊杰.VSTO-.NET平臺(tái)下嶄新的MS Office開發(fā)技術(shù)[J].黑龍江科技信息,2008(02):40
[2]McGrath K,Stubbs P.VSTO開發(fā)者指南[M].李永倫,譯.北京:機(jī)械工業(yè)出版社,2009
[3]劉廷,劉帆.ASP.NET開發(fā)實(shí)例完全剖析[M].北京:中國(guó)電力出版社,2006
[4]趙玉.基于ASP.NET的在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].長(zhǎng)春:東北師范大學(xué),2007