Example #1
0
        public static string CreateReport(string rootPath, string modelName, string dsName, Dictionary <string, string> parameters)
        {
            TcpClient client = new TcpClient();

            client.Connect(AppConfig.ReportServerIP, AppConfig.ReportServerPort);      // 与服务器连接
            NetworkStream streamToServer = client.GetStream();

            string msg = CreateMsg(modelName, dsName, parameters);

            byte[] buffer = Encoding.UTF8.GetBytes(msg);     // 获得缓存
            string slen   = buffer.Length.ToString();

            slen = "0000".Substring(0, 4 - slen.Length) + slen;
            streamToServer.Write(Encoding.UTF8.GetBytes(slen), 0, 4);//长度

            streamToServer.Write(buffer, 0, buffer.Length);
            streamToServer.Flush();

            string filename = DateTime.Now.ToString("yyyyMMddHHmmssfff");

            filename = filename + modelName;
            //string mappath = Server.MapPath(filename);
            FileStream fs = new FileStream(rootPath + filename, FileMode.Create);

            byte[] Data = new byte[1024];
            int    len;

            while ((len = streamToServer.Read(Data, 0, Data.Length)) > 0)
            {
                fs.Write(Data, 0, len);
            }

            //清空缓冲区、关闭流
            fs.Flush();
            fs.Close();

            //1小时后自动删除该文件
            ClearFile clearTask = new ClearFile(rootPath + filename);

            return(filename);
        }
 public MailService(ClearFile handler)
 {
     _handler       = handler;
     _configuration = ConfigurationManager.Instance;
     try
     {
         _smtpClient = new SmtpClient(Host, Port)
         {
             Credentials = new System.Net.NetworkCredential(_configuration.EmailAddresser, _configuration.EmailPassword),
             EnableSsl   = true
         };
     }
     catch (Exception)
     {
         _smtpClient = new SmtpClient(Host, Port)
         {
             Credentials = new System.Net.NetworkCredential("*****@*****.**", "passwdpasswd"),
             EnableSsl   = true
         };
     }
 }