繁体   English   中英

无需单击一次即可使用 localdb 发布 WPF 应用程序

[英]Publish WPF Application with localdb without click-once

我是一个绝对的初学者......这是我的第一个基于数据库的应用程序。

我想在离线单用户客户端上删除带有数据库(2 个表)的 c# wpf 应用程序。 它是 wpf c# ef6 代码第一个应用程序。 在我装有 vs2019 的机器上,它按预期运行。 现在尝试在新设置的 win10 机器上运行它,它甚至无法启动。

  • 净 4.7.2 安装
  • sql 服务器 2016 localdb 手动安装 (.msi)

这是我的数据库的连接字符串:

<connectionStrings>
<add name="ZuschnittverwaltungDB" connectionString="data source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|Datadirectory|\ZuschnittverwaltungDB.mdf;initial catalog=Zuschnittverwaltung.ZuschnittverwaltungDB;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" />

我认为我遗漏了一个重点,但在搜索了几天后我找不到任何解决方案......

编辑1:

AttachDbFilename=|Datadirectory|\ZuschnittverwaltungDB.mdf ->

AppDomain.CurrentDomain.SetData("DataDirectory", Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location));

我很感激每一种方法。

看来我先做的一切都是对的。 没有更改代码或安装任何新东西。

刚刚运行 cmd-> sqllocaldb delete mssqllocaldb

将数据库文件从我的电脑复制到指定的文件夹并且它有效......

谢谢@mm8。 我可以在 windows 事件管理器中找到更多错误信息

干杯

LocalDB 需要单独安装在客户端机器上。

如果您想“删除”部署您的数据库以及应用程序本身,您应该使用一个独立的数据库,如SQLite

如果您选择坚持使用 LocalDB,则需要确保将数据库文件部署到目标计算机上的|Datadirectory|\ZuschnittverwaltungDB.mdf (或您在配置文件中指定的任何路径)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM