您的位置:首页 > 编程语言 > Python开发

使用IronPython实现策略中心思路

2010-05-26 12:46 253 查看
对于不了解IronPhython的同学可以参考IronPython 与C#交互

一、基础知识

我们先从一个简单场景开始

不同公司的年假会有不同的策略,国家的规定好像是工作一年以上年假为5天,而有些公司还有些扩展的年假,比如每在公司多待一年年假增加1天,经理级别第一年就有年假等。如果我们使用简单的配置方式可能无法满足更复杂的策略,如果使用C#的动态编译(.net项目的二次开发解决方案)又有点复杂而且交互时还可能因为不同程序域带来很多问题。现在有了IronPhython实现起来就比较简单了。

我们先看代码:

代码

namespace ConsoleApplication7
{
class Program
{
static void Main(string[] args)
{
Employee employee = new Employee() {Id=1, EnterDays = 800,Name="lfm" };
Console.WriteLine(employee.AnnualLeave);
Console.WriteLine(employee.GetEmployeeNum());

}
}
}


结果为

6

lfm1

这里只是实现策略中心的部分核心代码,如果真的实现这个策略中心的话还有很多辅助工作要做,这里边IronPhython代码可能需要我们提供界面生成出来,那么我们就需要在使用的地方为策略服务提供输入和返回的数据类型,策略服务可以根据输入类型来反射得到所有的字段,这些字段可以用于生成条件,然后这些条件可以用来生成IronPhython代码,也可以把这些字段应用到IronPhython代码编写相应的策略上。

源码下载(需要自己引用IronPython)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: