} //Данная рассылка успешно public RC_Subsribes(int Code) { using (ManagerReportsEntities db = new ManagerReportsEntities()) { IEnumerable <L_Subscribes> sb_s = db.L_Subscribes.Where(p => p.id == Code); foreach (L_Subscribes sb in sb_s) { this.Code = sb.id; this.Name = sb.name; } //Формируем список всех файлов IEnumerable <ViewFileReport_Result> fr_s = db.ViewFileReport(Code); FilesAttach = new List <RC_File>(); foreach (ViewFileReport_Result fr in fr_s) { string[] words = fr.email.Split(';'); foreach (string s in words) { //Каждый файл на каждый email //Формируем список файлов RC_File FilesRep = new RC_File(); FilesRep.Code = fr.id; FilesRep.Name = fr.name; FilesRep.Format_file = fr.Format_name; FilesRep.Format_report = fr.Format_sysname; FilesRep.Place_save_local = fr.place_save_local; FilesRep.PlaceSaveSp_name = fr.PlaceSaveSp_name; FilesRep.Path_report = fr.path_report; FilesRep.ID_subsribes = fr.id_subsribes; FilesRep.f_Sendmail = fr.sendmail; FilesRep.Email = s;//fr.email; FilesRep.NameParamReport = fr.NameParamReport; FilesRep.ID_Directory = fr.ID_Directory; FilesRep.Name_Directory = fr.Name_Directory; //Для каждого файла список параметров если они не из справочника IEnumerable <L_ParamReports> pr_s = db.L_ParamReports.Where(p => p.id_filereport == FilesRep.Code); //Список параметров по всем параметрам для этого файла FilesRep.Param = new List <RC_ParamReports>(); foreach (L_ParamReports pr in pr_s) { FilesRep.Param.Add(new RC_ParamReports(pr.id, FilesRep.ID_Directory.ToString())); } if (FilesRep.NameParamReport != null) { } ///Console.WriteLine("------------------------------------"); ///Console.WriteLine("{0}; {1}; {2}; {3}", fr.name, fr.Name_Directory, fr.email, s); FilesAttach.Add(FilesRep); } } } //Если файлы не сформировались ставим Success = False //Формируем список всех писем //Если письма ,не сформировались ставим Success = False }
} //Формат параметра (int, string, date, datetime) public RC_ParamReports(int Code, string CatalogValue) { using (ManagerReportsEntities db = new ManagerReportsEntities()) { //Параметры для формирования файла IEnumerable <L_ParamReports> pr_s = db.L_ParamReports.Where(p => p.id == Code); foreach (L_ParamReports pr in pr_s) { this.Name = pr.name; this.Type = pr.S_ParamSysType.sysname; this.ValueFix = (CatalogValue != null && pr.S_ParamSysType.sysname == "param_directory" ? CatalogValue : pr.value_fix); this.ValueExpression = pr.S_ParamSysValueExp != null ? pr.S_ParamSysValueExp.sysname : null; //int? d = 0; d.HasValue this.Format = pr.S_ParamSysValueFormat.sysname; } } }