public IEnumerable <WeatherForecast> Get() { var resultFunc = NDelegate.Random().Func <int>("return 5;"); var result = resultFunc(); if (result == 5) { var rng = new Random(); return(Enumerable.Range(1, 1).Select(index => new WeatherForecast { Date = DateTime.Now.AddDays(index), TemperatureC = rng.Next(-20, 55), Summary = Summaries[rng.Next(Summaries.Length)] }) .ToArray()); } else { var rng = new Random(); return(Enumerable.Range(5, 10).Select(index => new WeatherForecast { Date = DateTime.Now.AddDays(index), TemperatureC = rng.Next(-20, 55), Summary = Summaries[rng.Next(Summaries.Length)] }) .ToArray()); } }
public void Test1() { var func = NDelegate.Random().Func <object>("Cs0104Model a = new Cs0104Model(); return a;", "Cs0104Model1"); var result = func(); Assert.Equal("Cs0104Model1", result.GetType().Namespace); }
public void Test3() { var func = NDelegate.Random().Func <Cs0104Model1.String>("String a = new String(Cs0104Model.A); return a;", "Cs0104Model1"); var result = func(); Assert.Equal("Cs0104Model1", result.GetType().Namespace); }
public void Test1() { string path1 = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "File", "TextFile1.txt"); string path2 = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "File", "TestFileModel.cs"); NAssembly assembly = new NAssembly(); assembly.AddFile(path1); assembly.AddFile(path2); var result = assembly.GetAssembly(); Assert.NotNull(result); var type = assembly.GetTypeFromFullName("aaa.TestFileModel"); Assert.NotNull(type); Assert.Equal("TestFileModel", type.Name); var @delegate = NDelegate.Random().Func <string>("return new TestFileModel().Name;", result); Assert.Equal("aaa", @delegate()); }
static void Main(string[] args) { string text = @"namespace HelloWorld { public class Test { public Test(){ Name=""111""; } public string Name; public int Age{get;set;} } }"; //根据脚本创建动态类 AssemblyCSharpBuilder oop = new AssemblyCSharpBuilder("test"); oop.Syntax.Add(text); Type type = oop.GetTypeFromShortName("Test"); Console.WriteLine(type.Name); var action = NDelegate.Random().Action(""); var a = action.Method; Console.WriteLine(action.Method.Module.Assembly); Console.ReadKey(); }
public static void RunDelegate5() { var action = NDelegate.Random().Delegate <TestDelegate>(@" return value.Length;"); int result = action("Hello"); Assert.Equal(5, result); }
public static async void RunAsyncDelegate3() { var action = NDelegate.Random().AsyncFunc <string, string, Task <string> >(@" return arg1 +"" ""+ arg2;"); string result = await action("Hello", "World1!"); Assert.Equal("Hello World1!", result); }
public static void RunDelegate5() { var action = NDelegate.Random().UnsafeFunc <string, string, string>(@" string result = arg1 +"" ""+ arg2; Console.WriteLine(result); return result;"); string result = action("Hello", "World1!"); Assert.Equal("Hello World1!", result); }
public ActionResult <IEnumerable <string> > Get() { string result = NDelegate.Random().Func <string>("return \"a\";")(); return(new string[] { "value1", result }); }
public static void Main(string[] args) { string result = NDelegate.Random().Func <string>("return \"a\";")(); CreateHostBuilder(args).Build().Run(); }