在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
界面如下: 然后,click filter button后的UI: 看,筛选出来了,代码如下(js能调C#写的UserInfo类的各个属性) 复制代码 代码如下: public class UserInfo { public string FirstName { get; set; } public string LastName { get; set; } public int Age { get; set; } public override string ToString() { return string.Format("{0}, {1}: {2}", FirstName, LastName, Age); } } private void btnSearch_Click(object sender, EventArgs e) private List<UserInfo> FilterUsers(string jsFilter) try return results; 我们来看看效率: 复制代码 代码如下: private void btnTest_Click(object sender, EventArgs e) { using (JavascriptContext context = new JavascriptContext()) { Stopwatch sw = new Stopwatch(); sw.Start(); int i=1000000; while(i-- > 0) { context.SetParameter("ii", 1); context.SetParameter("jj", 2); context.SetParameter("sum", 0); string js = string.Format(@"sum=ii+jj;"); context.Run(js); int sum = (int)context.GetParameter("sum"); } sw.Stop(); long useJS_Total = sw.ElapsedMilliseconds; sw.Reset(); long nouseJS_Total = sw.ElapsedMilliseconds; string msg = ""; MessageBox.Show(msg); 结果(上面的是通过js引擎计算的时间、下面的是纯C#计算时间,悲剧啊):这个Noesis.Javascript只适用于性能要求不高的场合 |
请发表评论