【发布时间】:2010-03-08 08:07:04
【问题描述】:
我有一个 C# 中的 Windows 应用程序。此应用程序与远程 mySQL 数据库交互。我应该创建一个 PHP Web 服务来执行这些操作(插入/添加/删除/更新)还是为 c# 使用 mySQL 连接器?我不确定哪种方式更好。
谢谢!
【问题讨论】:
-
您可能应该根据您的逻辑/物理执行环境来定义“远程”。
标签: c# .net php mysql web-services
我有一个 C# 中的 Windows 应用程序。此应用程序与远程 mySQL 数据库交互。我应该创建一个 PHP Web 服务来执行这些操作(插入/添加/删除/更新)还是为 c# 使用 mySQL 连接器?我不确定哪种方式更好。
谢谢!
【问题讨论】:
标签: c# .net php mysql web-services
MySQL 服务器是否在同一个网络中(物理上)。在我看来,相应的解决方案是创建一个专用 Web 服务,为您的应用程序提供 CRUD 功能。
这是因为它为您提供了一些Separation of Concerns (SoC),因为您可以将业务逻辑层与数据访问层分开。
另见:Single Responsibility Principle | “在面向对象的编程中,单一职责原则指出每个对象都应该有单一职责,并且该职责应该完全由类封装。它的所有服务都应该与该职责紧密结合。”
您的应用程序的每个部分都有特定的用途,这使得在很长一段时间内更容易维护。
现在这听起来很不错很酷,但是我们真的需要把所有东西都抽象掉吗?
与其他一切一样,视情况而定。
这是一个小用例:
作为开发人员,您需要做什么才能让您的应用程序正常运行?
使用 MySQLConnector: 在您的源代码中开始“hacking”,并确保所有查询都按预期运行。如果在这个过程中出现问题,修复它会很痛苦,因为它都嵌套在应用程序逻辑中。
使用专用网络服务: 只需确保您的方法已更新以匹配新的数据库设计 |无需更改应用程序端的任何内容[在某些情况下方法参数除外]。
干杯
【讨论】:
为什么在 c# 中使用 PHP web-service ?只需将 MySql 连接器用于 C#。 其次,与 C# 的 MySql 连接器相比,Web 服务的性能会很慢。
【讨论】: