某項目要調用現有的100多個DLL 二 最最簡單原型的思考
最最簡單的原型:
假設某個類庫提供了一個方法
public class UserManager
{
public Output GetUser(Input input);{...}
}
Input Onput是兩個類, 分別代表了輸入輸出參數的格式 ,沒有實現可序列化Serializable, 不能直接跨域
UserManager不是可序列化 不能用Marshal by value的方式跨域操作
UserManager沒有繼承MarshalByRefObject 無法通過Marshal by refrence 的方式跨域操作
這里有幾個小小的技術難點
1.如何讓沒有實現Serializable的類,變成跨域操作所需的可以序列化的類 (下面的章節解決這個問題)
2.有沒有一種簡單的方式可以實現跨域的簡單代碼操作, 就像平常的dll直接調用一樣
3.最終的實現是否可以調試
4.能否附加其他的功能,例如不需要額外編寫代碼,就可以開啟或者關閉所有接口的日志,(方法 輸入 輸出 執行時間)
5.代碼應該集中在framework中, 真正使用 編寫業務的人應該盡可能的方便 或者是透明的
浙公網安備 33010602011771號