【问题标题】:is there a way to include sql plugins to my c#application有没有办法在我的 c#application 中包含 sql 插件
【发布时间】:2015-09-11 08:14:15
【问题描述】:

我为 Windows 开发了C# 应用程序,后端是mysql 数据库,但问题是,如果我想在不同的计算机上运行它,它需要mysql 服务器软件,否则它无法打开数据库。有什么办法可以在sC#应用程序中添加插件或者在我的安装包中添加开源软件来运行数据库文件。请注意,我是C# 的新手,这是出于教育目的,如果我的提问方法不专业,请见谅。

前端:visual studio 2013 后端:Mysql server 2008

【问题讨论】:

  • 你到底在用什么?一个SDK?可执行文件?另外,你想完成什么?有很多可移植的数据库实现。
  • 感谢您使用 Visual Studio 2013 和 sql server 2008 回答我的 mdf 数据库文件,并可以告诉我正确的方向
  • 什么样的应用程序? Windows 窗体,WPF,什么?如果您需要一个本地数据库(每个用户都有他/她自己的数据库),那么您可以查看SQLite。 SQLite 是一个嵌入式数据库,使用它所需的所有东西都可以从 Nuget 下载。实际的数据库只是磁盘上的一个文件。
  • 是的,它是一个 Windows 窗体应用程序,如果我使用 sqlite,我必须更改编码权

标签: c# mysql


【解决方案1】:

我不知道你的问题是否正确,但我认为这是一个通用的数据访问层策略问题。

如果您使用 mySQL 或任何其他数据库“绑定”您的应用程序,那么就是这样。

根据应用程序的大小,您可以使用像SQLite 这样的开源数据库,它是一个可以与您的应用程序一起存储的单文件数据库。

如果您真的希望能够将您的软件与许多底层数据库一起使用,那么您有很多工作要做。

THIS SO 辩论中的问题是,这可能不是一个好主意,或者至少它是一个部分好主意。部分意味着您可以将基本数据库行为抽象为数据库独立,但您不会 100% 摆脱依赖关系

另一个好方法是使用 ORM。像 dapper 这样的微 ORM 或像 Nhibernate 这样的完整 ORM

ORM 可以让您做到这一点。您可以使用 OleDb 提供程序并访问许多底层资源,当然代价是不使用 100% 数据库的本机功能......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多