使用带有实体框架的 winform 应用程序部署的应用程序在客户端 PC 上不起作用
Posted
技术标签:
【中文标题】使用带有实体框架的 winform 应用程序部署的应用程序在客户端 PC 上不起作用【英文标题】:Deployed application using winform application with Entity Framework doesn't work on clients PCs 【发布时间】:2013-09-25 16:20:49 【问题描述】:我是在 Visual Studio 2010 中部署项目的新手
我正在使用 EF 5 编写带有 SQL Server 和 SQL Server CE 4.0 可选数据库选择的 Winforms 应用程序。
我在 Visual Studio 2010 中创建了安装项目
除了 ReportViewer 2010 之外,我已经添加了 .Net Framework 4 Full package X64_X86 作为先决条件。
我已经从与我的应用程序相同的位置创建了我的应用程序下载先决条件
我使用或创建的每个 dll、脚本、文件始终标记为副本,并像往常一样添加到安装项目中。
当我在开发人员机器上安装我的应用程序时,应用程序运行完美! (PC1)
当我将我的应用程序测试到 Windows 的新副本时,安装运行正常,安装执行以安装 Net 框架、报告查看器和我的所有文件以正确的方式复制,如我的 VS 2010 发布文件夹所示(在除 vhost 文件外的所有文件) 但是当我运行我的应用程序时,它根本不工作!在我的启动画面开始之前它就停止工作了!!!(PC2)
我已经在预安装的 SQL Server 2008 R2 Express 版本上重新安装了该应用程序,但它运行良好! (PC3)
我的应用程序正在使用存储在加密文件中的连接字符串,当文件不存在时,它会显示一个创建和构建连接字符串加密文件的表单(模拟在 Visual Studio IDE 中添加连接表单)。
注意:PC1、PC2、PC3 是相同的并且具有相同的品牌(即使在硬件和软件上)。 我已经搜索了有关部署和发布的所有信息,单击一次或创建设置项目,但我所做的没有任何异常或遗漏 什么情况?!我错过了什么??
【问题讨论】:
我已经编辑了我的问题以使其更清楚,希望它会 在您的启动代码中添加错误处理,并使用 Process Explorer 检查丢失的文件/注册表项 @ErikEJ:-我会尝试反馈结果谢谢你; 使用 NuGet SQL Server CE 4.0 包,这样客户端就不需要在本地安装它。 nuget.org/packages/EntityFramework.SqlServerCompact/4.3.6 【参考方案1】:其实我之前也遇到过这个问题 如果您要安装 .Net 客户端,请检查您的 .Net 框架,使用完整的 .net 框架 4
【讨论】:
以上是关于使用带有实体框架的 winform 应用程序部署的应用程序在客户端 PC 上不起作用的主要内容,如果未能解决你的问题,请参考以下文章