我在數據庫表中存儲了一些C#代碼。用Reflection.Emit生成動態代碼
我有一個字符串中的基類的整個代碼。
在手的存儲C#代碼,我添加到類名爲m1
包含的方法return <<some C# code>>;
(該方法總是返回object
所以C#代碼可以是:88 + 90
,"hello world"
,this.ToString()
等),將其保存到一個文件並用CSharpCodeProvider
進行編譯,然後在我的程序上運行它。
存儲的C#代碼可以使用基類中的一些方法。
該方案效果很好。
現在,我會使用Reflection.Emit
來做到這一點,以避免編譯步驟。
這是可能的,如果是這樣,它將如何完成?
您確定C#.NET是正確的工具嗎? –
你是否有將數據存儲在數據庫中的原因? – siride
您相當信任您的數據,以至於您願意運行由數據庫中的文本驅動的任意代碼? –