~~~我所遇到的WINFORM下水晶报表问题,UP有分
最近开发遇到水晶报表的问题,查阅了些相关资料,有些虽理解犹欠佳,帖出来希望共勉.亦希望有人解惑.,UP有分.   
 1.在pull模式下,直接连接数据库,即oledb,水晶报表里的字段是直接从【字段资源管理器】下的【数据库字段】拖过去的,关联的是Products表,Form窗体load时的代码如下,测试通过: 
 reportDocument1   =   new   CrystalDecisions.CrystalReports.Engine.ReportDocument(); 
 reportDocument1.Load(@ "E:\z7z8\Test1\myTestRpt1.rpt "); 
 #region   解决登陆 
 //foreach(CrystalDecisions.CrystalReports.Engine.Table   tb   in   reportDocument1.Database.Tables) 
 //{ 
 //CrystalDecisions.Shared.TableLogOnInfo   logininfo=tb.LogOnInfo; 
 //logininfo.ConnectionInfo.ServerName=@ "C47ED435468B448\DONGWEI "; 
 //logininfo.ConnectionInfo.DatabaseName= "Northwind "; 
 //logininfo.ConnectionInfo.UserID= "sa "; 
 //logininfo.ConnectionInfo.Password= " "; 
 //tb.ApplyLogOnInfo(logininfo); 
 //} 
 #endregion 
 crystalReportViewer1.ReportSource=reportDocument1;   
 我的疑问是:我看教程的时候,讲到必须要验证,也就是我注释的那一段,但是我注释后依然能正常运行.请问这是为什么?   
 2.在用PUSH模型时,需要自己建立XSD文件,这是一个XML类型的文件,他存储的数据源的结构,此时水晶报表里的字段是通过ADO.NET连接获取的,关联的也是products表,测试通过的代码如下:   
 SqlConnection   conn   =   new   SqlConnection( "server=(local)\\dongwei;database=northwind;Trusted_Connection=yes "); 
 conn.Open(); 
 SqlCommand   com   =   new   SqlCommand( "select   *   from   products ",conn); 
 SqlDataAdapter   ada   =   new   SqlDataAdapter(com);	 
 myDataset1   m=   new   myDataset1();//强类型化数据集 
 ada.Fill(m, "products "); 
 myReport2   m2   =   new   myReport2(); 
 m2.SetDataSource(m.Tables[0]); 
 this.crystalReportViewer1.ReportSource=m2; 
 this.crystalReportViewer1.RefreshReport();,   
 我想问的是,我能不能使用类型化数据集,自己生成相关的XML文件,然后进行绑定.我的代码如下:   
 System.Data.DataSet   ds   =   new   System.Data.DataSet(); 
 ds.Tables.Add(myDt);//myDt是我用来封装数据的dataTable,此时里面已经存在数据 
 ds.WriteXml( "myDt.Xml ",System.Data.XmlWriteMode.WriteSchema); 
 myRpt3.SetDataSource( "myDt.Xml ");//水晶报表里没有拖入字段		 
 this.crystalReportViewer1.ReportSource=myRpt3; 
 this.crystalReportViewer1.RefreshReport();   
 如果可以使用弱类型化数据集,我上面的这段代码应该如何更改,谢谢~~~ 
------解决方案--------------------up
------解决方案--------------------看着累啊
------解决方案--------------------为啥不用push的方法
------解决方案--------------------up
------解决方案--------------------up
------解决方案--------------------我的疑问是:我看教程的时候,讲到必须要验证,也就是我注释的那一段,但是我注释后依然能正常运行.请问这是为什么?   
 ---------------------------------------------- 
 那是因为你还没有部署,只是本机运行,其他机子访问你就会提示输入帐号密码的
------解决方案--------------------我只用过push模式   
 该模式通过XSD文件来设计报表 运行时刻连接数据库取得数据集即可
------解决方案--------------------mark 吧, 水晶报表只是半通水
------解决方案--------------------1、报表记住了你操作时连接的那个啊,如果你需要连接其它的,或者数据库密码变了,你看它出不出连接对话框! 
 2、我不知道你这样后,那报表怎么设计的? 
------解决方案--------------------不懂, 
 顶
------解决方案--------------------顶 
------解决方案--------------------