我正在將基於Roslyn的腳本引擎嵌入到我的應用程序中,並開始面臨一些問題。當加載引用了我的引擎,我做了以下運行Roslyn腳本時未在運行時發現程序集
var engine = new Roslyn.Scripting.CSharp.ScriptEngine();
engine.AddReference("MyAssemblyLocation");
問題:
- 如果
MyAssemblyLocation
組件引用其他組件,我怎麼告訴羅斯林加載它們沒有做一個engine.AddReference("MyAssemblyLocation");
- 腳本應該運行的主機應用程序已經加載了一些我想在腳本中使用的程序集,有沒有辦法讓Roslyn將自己掛載到內存中已經加載的dll中,而不是加載新的實例?
- 最後,有沒有辦法告訴羅斯林遞歸加載的
MyAssemblyLocation
謝謝所有的依賴。
優秀的答案,+1! – GETah