我希望能寫代碼到一個已經運行的程序,將編譯並執行代碼時,我打我的UI發送代碼按鈕。如何編寫和編譯「對飛」
例如:
如果鍵入:
MessageBox.Show("Hello World");
和點擊發送,我會得到一個彈出說的Hello World。
我已經搜查,搜查的方式來這一點,但我不能讓任何工作。
任何人都可以推薦一個很好的方法來做到這一點?
我希望能寫代碼到一個已經運行的程序,將編譯並執行代碼時,我打我的UI發送代碼按鈕。如何編寫和編譯「對飛」
例如:
如果鍵入:
MessageBox.Show("Hello World");
和點擊發送,我會得到一個彈出說的Hello World。
我已經搜查,搜查的方式來這一點,但我不能讓任何工作。
任何人都可以推薦一個很好的方法來做到這一點?
你可以使用CSharpCodeProvider
但它是一個較老的技術,很快將過時。
最新的項目微軟還與玩弄是羅斯林,這是目前在CTP和它暴露構建C#和VB.NET的應用程序時所使用的微軟和VStudio等編譯器和分析系統。
下面是如何使用其內置的腳本引擎的鏈接。
http://visualstudiomagazine.com/articles/2011/11/16/the-roslyn-scripting-api.aspx
的[C#如何添加代碼在運行時執行(這看起來像一篇非常有趣的文章。感謝您的閱讀! –
你要找的是CSharpCodeProvider。
這允許您從源代碼編譯或評估C#代碼並運行它。它可以在運行中和從另一個進程中完成。
可能重複http://stackoverflow.com/questions/10831421/c-sharp-how-to-add-a-code-到執行-在運行時);也看到[是否有可能動態編譯和執行C#代碼片段?](http://stackoverflow.com/questions/826398/is-it-possible-to-dynamically-compile-and-execute-c-sharp-code -fragments) –
您是否閱讀過codedom? –
StackOverflow用戶傾向於傾向於顯示您嘗試的方式,並要求獲得幫助,而不是簡單地詢問如何操作。 – Crisfole