2010-11-20 41 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,然后加载它。

但是,要小心 - 这个生成的代码将拥有与您自己的代码相同的权利和能力。

此外,您可能会碰到在同一应用程序域中多次加载相同程序集名称的问题。

相关问题