/// <summary> /// Represents an anonymious method that create String.Format object /// </summary> /// <summary> /// Represents the anonymious Action that appends a string to a string builder /// </summary> public WSDAnalizer(IProcessedData ProcessedData) { _ProcessedData = ProcessedData; _WeeklySaleList = ProcessedData.ProductVSSaleByWeek; _TotallySaleList = ProcessedData.ProductVSTotalSale; _TotalNumberOfWeeksInModel = ProcessedData.TotalNumberOfWeeksInModel; SetWSDListForProduct(); }
/// <summary> /// Permitted UI Service /// </summary> /// <param name="sourcePath"></param> /// <param name="TargetPath"></param> /// <returns></returns> public bool ResponseCSVFile(string sourcePath, string TargetPath) { using (Services s = new Services(sourcePath)) { IDataSource ds = s.InputDataFactory.CreateDataSource(); IProcessedData ps = s.CreateProcessedData(ds); IWSDAnalizer ws = s.ModelService.ConstantModel.CreateWSDAnalizer(ps); IEnumerable <WSDDATAProduct> wsd = ws.WSDListForProduct; wsd.PrepareForWrite(ExtensionMethods.Delegetes.StringFormatPreparer).BuildTheStrings(ExtensionMethods.Delegetes.StringBuilderAppender).MaterializeBuildedString(TargetPath); } return(true); } //UI Direct Service
public static void Main(string[] args) { //Func<WSDDATAProduct, string> StringFormatPreparer = (WSDDATAProduct wsdDataforProduct) => string.Format("{0},{1},{2},{3}", wsdDataforProduct.Product, wsdDataforProduct.TotalSale, wsdDataforProduct.WeeklyAverage, // wsdDataforProduct.WeeklyStDev, Environment.NewLine); Services s = new Services(); s.Path = CSVpath; IDataSource asd = s.InputDataFactory.CreateDataSource(); IProcessedData Ipd = s.CreateProcessedData(asd); IWSDAnalizer WSDan = s.ModelService.ConstantModel.CreateWSDAnalizer(Ipd); IEnumerable <WSDDATAProduct> ResultList = WSDan.WSDListForProduct; ResultList.PrepareForWrite(Func.StringFormatPreparer).BuildTheStrings(Func.StringBuilderAppender).MaterializeBuildedString("C:\\DEVELOPER\\DENEME_2MonthSalesData.csv"); //FINISH ... : 40 sn }
public BusinessLogic(IProcessedData processedData, IFees fees, IDiscounts discounts) { _processedData = processedData; _fees = fees; _discounts = discounts; }
/// <summary> /// Weekly Standard Deviation data Analizer creator /// </summary> /// <param name="ProcessedData"></param> /// <returns></returns> public IWSDAnalizer CreateWSDAnalizer(IProcessedData ProcessedData) { return(new WSDAnalizer(ProcessedData)); }