放假之前接了個大活,說是要把工作流做活,做到登陸的學生提交申請,提交給老師,這個老師是根據組織結構查出來的。
其實這個是基礎系統自己的邏輯,查詢資料而已,當時並沒有多放多少精力在這上面。重點是另外乙個,怎麼把工作流執行的業務做靈活,具體要求就是改變繫結的業務時,不要改**,起碼不要改基礎內部的**。
這個就感覺不簡單了,查了一些工作流的資料,所有的繫結都是通過頁面拖拽完成的,讓我做乙個這個出來好像是有點難度啊。
然後,師姐把難度給我降低了,可以用配置檔案做靈活。
配置檔案這個難度確實小了好多,這個時候我就想到了反射。之前寫了篇部落格,說是反射可以獲得程式集中的所有的資訊,然後就能實現動態配置。
首先看看之前的**吧,這裡有一句
wfpcaseinstance.handler = studentchange.addstudentchange
這句就是我的工作重點,首先就是如何用反射獲得這個方法的資訊,然後就是把這個方法建立乙個委託,最後傳過來。
//使用反射讀取要執行的方法
//建立乙個委託,型別為工作流中的codeactiveexecuting,方法資訊為讀取配置檔案生成的方法
codeactiveexecuting handler =(codeactiveexecuting)delegate.createdelegate(typeof(codeactiveexecuting),null, methodname);
wfpcaseinstance.handler = handler; //將建立的委託傳給工作流
配置檔案中,寫的是程式集,類,方法的名稱。
這樣就實現了最簡單的靈活了,中間建立委託困擾了好久,下次好好總結一下委託。 B S備忘錄14 IIS新增MIME型別
搬得差不多了,最近發布wcf服務端的時候又是遇到了svc打不開的情況,記得最早的時候遇到過這個問題,後來解決了就忘了,重灌了電腦之後又出現了。wcf錯誤 無法啟用服務,因為它不支援 asp.net 相容性。已為此應用程式啟用了 asp.net 相容性。請在 web.config 中關閉 asp.ne...
B S備忘錄21 使用反射將委託掛鉤
上上篇部落格,寫了我用反射實現動態配置業務的過程,其中有乙個方法是關鍵點,createdelegate。以前使用委託的時候都是使用把方法繫結給委託的方式,來使用。這次是需要使用methodinfo這個型別來繫結委託,查的資料還是msdn比較詳細。這個createdelegate一共有。好多個過載,我...
B S備忘錄22 少年,不來一發彈幕嗎
最近做專案做的火熱,自己的學習反而有些落後了,但是沒關係,畢竟現在學習的東西都是以後要一直使用的,在專案中多寫寫調調還是有用的。首先在vs預設的mvc 中加了點東西,把彈出彈幕要用的標籤都寫完。x x之後寫了乙個樣式表,算是給這個簡單的彈幕螢幕加了些預設的樣式。barrage screen barr...