1
嗨我想找到執行代碼在運行時生成的方式,而無需重新啓動程序。運行期間:編寫,編譯和使用C#代碼?
我的當前工作流:
- 用戶使用我的程序來創建一些圖表
- 用戶按下
compile
和C#代碼是從用戶示 - C#代碼被放置在一個代碼文件生成其中存在於我的項目層次結構中。程序然後重新啓動以使用新生成的代碼。
我後來改變了第3步,所以我不必重新啓動程序。例如:
- C#代碼是通過生成DLL的C#編譯器運行的。
- 任何錯誤被顯示給用戶然後
- 該DLL加載到程序
- 設置一些鏈接到代碼的方法,所以可將數據傳遞給它,並獲得輸出數據
如果這可行?
您需要[CSharpCodeProvider](http://msdn.microsoft.com/en-us/library/vstudio/microsoft.csharp.csharpcodeprovider(v = vs.110).aspx)類。在幫助頁面上有一個相當不錯的例子,還有很多其他的例子可以在線獲得。 –