我的报表是用数据库连接的,我也做了如下设置。        protected void Page_Load(object sender, EventArgs e)
    {
        ReportDocument ReportDoc = new ReportDocument();
        ReportDoc.Load(Server.MapPath("CrystalReport1.rpt"));
        TableLogOnInfo logonInfo = new TableLogOnInfo();
        foreach (CrystalDecisions.CrystalReports.Engine.Table tb in ReportDoc.Database.Tables)
        {
            logonInfo = tb.LogOnInfo;
            logonInfo.ConnectionInfo.ServerName = "local";
            logonInfo.ConnectionInfo.DatabaseName = "LMS1";
            logonInfo.ConnectionInfo.UserID = "sa";
            logonInfo.ConnectionInfo.Password = "******";
            tb.ApplyLogOnInfo(logonInfo);
        }        //CrystalReportViewer1.ReportSource = ReportDoc;
        CrystalReportViewer1.DataBind();
        //ReportDoc.SetDatabaseLogon("sa", "******", "local", "LMS1");    }

解决方案 »

  1.   

    ///   <summary> 
                    ///   发送邮件 
                    ///   </summary> 
                    ///   <param   name= "strSmtpServer "> smtp地址 </param> 
                    ///   <param   name= "UserName "> 用户名 </param> 
                    ///   <param   name= "Password "> 密码 </param> 
                    ///   <param   name= "strFrom "> 发信人地址 </param> 
                    ///   <param   name= "strto "> 收信人地址 </param> 
                    ///   <param   name= "strSubject "> 邮件标题 </param> 
                    ///   <param   name= "strBody "> 邮件正文 </param> 
                    public   static   void   SendMail(string   strSmtpServer,   string   UserName,   string   Password,   string   strFrom,   string   strto,   string   strSubject,   string   strBody,   string   strFileName) 
                    { 
                            //生成一个   使用SMTP发送邮件的客户端对象 
                            System.Net.Mail.SmtpClient   client   =   new   System.Net.Mail.SmtpClient(strSmtpServer);                         //表示以当前登录用户的默认凭据进行身份验证 
                            client.UseDefaultCredentials   =   true;                                   //包含用户名和密码 
                            client.Credentials   =   new   System.Net.NetworkCredential(UserName,   Password);                           //指定如何发送电子邮件。 
                              //Network                                             电子邮件通过网络发送到   SMTP   服务器。     
                              //PickupDirectoryFromIis               将电子邮件复制到挑选目录,然后通过本地   Internet   信息服务   (IIS)   传送。     
                              //SpecifiedPickupDirectory           将电子邮件复制到   SmtpClient.PickupDirectoryLocation   属性指定的目录,然后由外部应用程序传送。                             client.DeliveryMethod   =   System.Net.Mail.SmtpDeliveryMethod.Network;                         //建立邮件对象   
                            System.Net.Mail.MailMessage   message   =   new   System.Net.Mail.MailMessage(strFrom,   strto,   strSubject,strBody); 
                            
                            //定义邮件正文,主题的编码方式 
                            message.BodyEncoding   =   System.Text.Encoding.GetEncoding( "gb2312 "); 
                            message.SubjectEncoding   =   System.Text.Encoding.GetEncoding( "gb2312 "); 
                          
                            //获取或设置一个值,该值指示电子邮件正文是否为   HTML。   
                            message.IsBodyHtml   =   false; 
                            
                            //指定邮件优先级 
              
                            message.Priority   =   System.Net.Mail.MailPriority.Normal;                         //添加附件 
                            //System.Web.Mail.MailAttachment   mailAttachment=new   System.Web.Mail.MailAttachment(@ "f:/baihe.txt ");   
                            if   (strFileName   !=   " "   &&   strFileName   !=   null) 
                            { 
                                    Attachment   data   =   new   Attachment(strFileName); 
                                    message.Attachments.Add(data); 
                            } 
                        
                            
                            //发件人身份验证,否则163   发不了 
                            client.Credentials   =     new   System.Net.NetworkCredential(strFrom,   Password);                         //发送 
                            client.Send(message); 
                    } 
            }
    2.0版本的 你看看是不是你的防火墙之类给挡住了 
    今后建议楼主发帖前,先搜索csdn一下。你这样问题,一搜一大把下面是1。1 的
    #region 发送邮件 /// <summary>
    /// 发送邮件
    /// </summary>
    /// <param name="_UserName">用户名</param>
    /// <param name="_Mail">用户注册的电子邮件</param>
    /// <param name="_Pwd">用户登录密码</param>
    /// <returns>是否发送成功</returns>
    public static bool SendMail (string _UserName,string _Mail,string _Pwd)
    {
    string _adminMail = System.Configuration.ConfigurationSettings.AppSettings["AdminMail"].ToString();
    string _adminMailPwd = System.Configuration.ConfigurationSettings.AppSettings["AdminMailPwd"].ToString();
    string _adminMailSmtp = System.Configuration.ConfigurationSettings.AppSettings["AdminMailSMTP"].ToString();
    string _subject = System.Configuration.ConfigurationSettings.AppSettings["MailSubject"].ToString();
    string _body = System.Configuration.ConfigurationSettings.AppSettings["MailBody"].ToString(); MailMessage mailObj = new MailMessage();
    mailObj.To = _Mail;
    mailObj.From = _adminMail;
            
    mailObj.Subject = _subject;//"您在投资基金网的注册信息";
    mailObj.Body = _body.Replace("[UserName]",_UserName).Replace("[Pwd]",_Pwd).Replace("[Br]","<br/>").Replace("[Nbsp]","&nbsp;");//"尊敬的用户:<br/>&nbsp;&nbsp;&nbsp;&nbsp;您好,您的注册信息如下<br/>用户名:" + _UserName + " 密码:" + _Pwd;
            
    mailObj.BodyFormat = MailFormat.Html;
     
    mailObj.Priority = MailPriority.High; SmtpMail.SmtpServer = _adminMailSmtp;
    //mailObj.Attachments.Add(new MailAttachment("c:\\swf\\000.bmp"));
    //string[] adminName = _adminMail.Split('@');
    ///////////////////////////////////FrameWork1.1
    mailObj.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
    ////设置验证用户名 
    //mailObj.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", adminName[0].ToString());
    mailObj.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", _adminMail);
    ////设置验证密码 
    mailObj.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", _adminMailPwd);
    ////////////////////////////////////////////// SmtpMail.Send(mailObj);
    return true;
    }
    #endregion或者参见 http://www.luckyegg.cn
      

  2.   


    8好意思,发错了。 sorry lz