Beispiel #1
0
        /// <summary>
        /// Setup up the logger
        /// </summary>
        public FileLogger()
        {
            var dir  = ScriptEngine.ConfigurationSettings.Settings.FileLoggerSettings.Folder;
            var file = ScriptEngine.ConfigurationSettings.Settings.FileLoggerSettings.FileName;
            var over = ScriptEngine.ConfigurationSettings.Settings.FileLoggerSettings.Overwrite;

            Path = FilePathBuilder.BuildPath(dir, file, over);
        }
        /// <summary>
        /// Save a result of a run
        /// </summary>
        /// <param name="results"></param>
        public void SaveResults(ScriptRunResults results)
        {
            // get settings from configuration file
            var dir  = ScriptEngine.ConfigurationSettings.Settings.FileResultsStorage.Folder;
            var file = ScriptEngine.ConfigurationSettings.Settings.FileResultsStorage.FileName;
            var over = ScriptEngine.ConfigurationSettings.Settings.FileResultsStorage.Overwrite;

            // generate the path (make it unique if necessary)
            var fileName = FilePathBuilder.BuildPath(dir, file, over);

            // save the file data
            File.WriteAllText(fileName, JsonConvert.SerializeObject(results));
        }
Beispiel #3
0
        /// <summary>
        /// 建制 Mail
        /// </summary>
        /// <param name="topic">主题</param>
        /// <param name="stream">附件流</param>
        /// <returns>mail 管理者</returns>
        protected virtual MailManager BuildMail(TopicDto topic, Stream stream = null)
        {
            this.OnTopicBuilding(topic);

            var fileName = FilePathBuilder.BuildPath(
                string.Format("{0}-{1}", topic.TopicName, DateTime.Now.ToString("yyMMddHHmmss")),
                FileExtension.Excel2007);

            var subject = topic.Subject;
            var body    = topic.Body;
            var mailTos = (from subscriber in topic.Subscribers
                           select subscriber.Email).ToArray();

            if (stream != null)
            {
                var attachmemts = new List <Tuple <Stream, string> > {
                    Tuple.Create(stream, fileName)
                };
                return(new MailManager(subject, body, mailTos, attachmemts));
            }

            return(new MailManager(subject, body, mailTos));
        }