我在实体框架下使用SQL Server Management Studio 2014在3层(UI,BLL,DAL)体系结构上开发了WPF应用程序。
我一直在研究如何在任何PC上运行带有数据库的C#应用程序。我发现需要在启动之前在系统中预安装SQL Server Express和LocalDB。所以我做到了。
为了将带有数据库的C#应用程序转换为客户端的可执行应用程序,我使用了高级安装程序。
在处理中...
对于应用程序的最佳转换。根据论坛/教程,.mdf和.ldf文件必须位于Debug文件夹中,哪一个?,我不知道,原因是解释是在项目的单个Debug文件夹中,我的有3个Debug文件夹,在每个层上一个,通过推论,我把它放在了DAL(如图所示)中,原因是数据访问层。
链接:http://www.uploadmb.com/dw.php?id=1532126355
(路径:ReportManager> DAL> bin>调试)
.msi已成功构建。
它需要禁用(在服务中)SQL Server Management Studio以模拟客户端系统。
之后,安装了SQl Server Express 2012和LocalDb。
问题...
在使用预定义凭据登录时,它显示以下消息:
链接:http://www.uploadmb.com/dw.php?id=1532126407
链接:http://www.uploadmb.com/dw.php?id=1532126432
到目前为止,这些问题存在于连接字符串(UI和DAL层中的App.config)中。
这是交易...
这些消息的原因是,当我开始开发程序时,.msi程序是在SQL Server Management Studio 2014的连接字符串上生成的。
这意味着,我需要再次生成.msi,但要使用SQL Express / LocalDB连接来使其每次连接都安装在新PC上。
我试图弄清楚如何使用SQL Express / LocalDb创建新连接,并以某种方式使其能够识别Debug文件夹中的.mdf文件,然后正确生成.msi。
针对SQL Server Management Studio 2014的默认连接字符串(工作):
我正在尝试使用多个String来在SQL Express / LocalDB上进行匹配,并为其创建正确的连接String,但似乎没有一个人起作用。
到目前为止我所做的...
链接:http://www.uploadmb.com/dw.php?id=1532126459
第一次尝试
服务器名称:X293CA \ SQLEXPRESS 数据库名称:{LocalDB)\ MSSQLLocalDB
第二次尝试
服务器名称:np:\。\ pipe \ LOCALDB#5F9B0D95 \ tsql \ query 数据库名称:。\ SQLEXPRESS
第三次尝试
服务器名称:(localdb)\ v11.0 数据库:ReportManager.mdf
第四次尝试
服务器名称:(localdb)\ v11.0 数据库:SQLExpress
第五次尝试
服务器名称:(localdb)\ MSSQLLocalDB 数据库:\ ReportManager.mdf
你们中的任何人都可以帮我吗?
致谢