public static void FreeLanguageComponentObject(LanguageComponentManager languageComponentManager) { using (Stream stream = File.Open(LanguageFileName, FileMode.Create)) { BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(stream, languageComponentManager); } }
public override void Run(object parameter, LanguageComponentManager trackMark) { if (parameter != null) { var OrderItem = parameter as OrderItem; Console.WriteLine("发送采购商品确定邮件:商品名称{0},数量{1}", OrderItem.Product.Name, OrderItem.Number); } }
public override void Run(object parameter, LanguageComponentManager trackMark) { trackMark.Index = 0; if (this.Expression(parameter as TParameter)) { this.If.Run(parameter, trackMark); } else if (Else != null) { this.Else.Run(parameter, trackMark); } }
public override void Run(object parameter, LanguageComponentManager trackMark) { trackMark.Index = 1; var Plist = (parameter as TParameter); for (int index = CurrentIndex; index < Plist.Count; index++) { this.CurrentIndex = index; if (ItemExpression != null) { ItemExpression.Run(Plist[index], trackMark); } } }
public LanguageComponentManager CreateNewOrderLanguageComponent(Order order) { LanguageComponentManager manager = new LanguageComponentManager() { Parameter = order }; var sendEmail = new SendEmailOrderItemConfirmComponent(); var forLanguage = new ForLanguageComponent <Order>(sendEmail, null); var ifelseLanguage = new IfLanguageComponent <Order>(forLanguage, null); ifelseLanguage.SetIfExpression(ord => order.Customer.CustomerType == CustomerType.Vip, order); manager.TrackMark += ifelseLanguage.Run; manager.TrackMark += forLanguage.Run; manager.TrackMark += sendEmail.Run; manager.FirstLanguage = ifelseLanguage; return(manager); }
public virtual void Run(object parameter, LanguageComponentManager trackMark) { }
public virtual void Run(LanguageComponentManager trackMark) { }
public override void Run(LanguageComponentManager trackMark) { this.Run(this.Parameter, trackMark); }