2010-11-20 39 views
1

我有這個字符串中的XML文件:執行字符串和檢索結果

DateTime.ParseExact("21/06/1980", "dd/MM/yyyy", 
        System.Globalization.CultureInfo.GetCultureInfo("fr-fr")) 

我想讀取xml,執行這個字符串並檢索結果。

你有什麼想法來執行和檢索結果嗎?

回答

2

C#和.NET框架都沒有提供任何類型的字符串代碼評估。如果你可以保證字符串的格式(換句話說,你可以保證字符串將用三個參數來描述一個靜態方法調用),你可以解析出類型,方法和參數,並用反射來調用它們。

你能描述一個更普遍的問題嗎?也許有更好的方法。

0

C#沒有這樣的功能。但是你可以嘗試在運行時編譯一個DLL,加載它並執行它。

This論壇有這樣一個例子。基本思想是使用CodeDom

0

當你的應用程序被編譯時,你的代碼就變成了MSIL,這就是在.NET Framework上運行的東西。

你要求的是在運行時編譯任意C#代碼,然後執行它。

有幾種可能的方法,但它們都不是特別容易。

最容易的是,如果您可以依賴於.NET SDK在您運行的環境中存在。如果是這樣,那麼你可以調用CSharp編譯器(csc),生成一個DLL,然後加載它。

但是,要小心 - 這個生成的代碼將擁有與您自己的代碼相同的權利和能力。

此外,您可能會碰到在同一應用程序域中多次加載相同程序集名稱的問題。

相關問題