【发布时间】:2015-08-06 12:34:26
【问题描述】:
我是编程新手,我使用 Visual Studio 2012 创建了一个简单的 Windows 窗体应用程序,并结合了 SQL Server 2012 数据库。我使用 Entity Framework 只是为了调用 Stored Procedures,如下例所示:
private void initializeCourseComboBox()
{
using (HomeLibDBEntities db = new HomeLibDBEntities())
{
cmbBxCourse.DataSource = db.uspGetCourseNames();
}
cmbBxCourse.SelectedIndex = -1;
}
我的 App.config 文件包含如下连接字符串:
<connectionStrings>
<add name="HomeLibWinFormsApp.Properties.Settings.HomeLibDBConnectionString" connectionString="Data Source=SHEHANS-PROBOOK;Initial Catalog=HomeLibDB;Integrated Security=True" providerName="System.Data.SqlClient" />
<add name="HomeLibDBEntities" connectionString="metadata=res://*/HomeLibDBModel.csdl|res://*/HomeLibDBModel.ssdl|res://*/HomeLibDBModel.msl;provider=System.Data.SqlClient;provider connection string="data source=SHEHANS-PROBOOK;initial catalog=HomeLibDB;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
</connectionStrings>
请注意,我在上面的代码中有另一个连接字符串,因为我没有在Cristal Reports 中使用Entity Framework 实体。相反,我使用了调用 SQL 存储过程 的常规方式,如下例代码所示:
ReportDocument repDoc = new ReportDocument();
private void formReaderReport_Load(object sender, EventArgs e)
{
repDoc.Load(@"D:\Academic\Training Homework\C#\Projects\HomeLib\HomeLibWinFormsApp\ReadersCrystalReport.rpt");
SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=HomeLibDB;Integrated Security=True");
SqlDataAdapter adap = new SqlDataAdapter("uspGetAllReaders", conn);
adap.SelectCommand.CommandType = CommandType.StoredProcedure;
DataSet dataSet = new System.Data.DataSet();
adap.Fill(dataSet, "WholeReader");
repDoc.SetDataSource(dataSet);
crystalReportViewer1.ReportSource = repDoc;
}
现在,我需要发布此应用程序并将其部署到另一台计算机/笔记本电脑上。我已经为 Visual Studio 2012 安装了 InstallShield Limited Edition 问题是,我不知道如何正确创建 setup.exe 可执行文件。我找不到任何教程说明如何在将 SQL Server 数据库 与应用程序链接时执行此操作。我尝试了几件事,但都失败了。请如果有人可以通过建议做什么或为我提供一些确切的链接来帮助我解决这个问题,我们将不胜感激。谢谢!
【问题讨论】:
标签: c# entity-framework visual-studio-2012 sql-server-2012 installshield-le