C# 在web和桌面应用程序中同步数据库?
我正在尝试开发一个web应用程序(使用ASP.NET和c#),该应用程序使用托管在web服务器上的特定数据库。我将有另一个桌面应用程序,将使用本地数据库。两个数据库在启动时具有相同的结构和数据。然后,当用户向web应用程序添加数据,而员工向桌面应用程序添加数据时,数据库将发生变化。过了一会儿,我必须同步两个数据库。C# 在web和桌面应用程序中同步数据库?,c#,asp.net,database,desktop-application,C#,Asp.net,Database,Desktop Application,我正在尝试开发一个web应用程序(使用ASP.NET和c#),该应用程序使用托管在web服务器上的特定数据库。我将有另一个桌面应用程序,将使用本地数据库。两个数据库在启动时具有相同的结构和数据。然后,当用户向web应用程序添加数据,而员工向桌面应用程序添加数据时,数据库将发生变化。过了一会儿,我必须同步两个数据库。 最好的方法是什么 有没有开源的示例/初学者工具包 谢谢。有趣的问题: 同步数据可能会变得相当复杂,因为覆盖由其他用途更新的数据很容易发生,特别是如果这是通过表行完成的。理想情况下,在
如果桌面连接到internet,那么直接连接到数据库可能是值得的。或者,如果它是一台运行中的笔记本电脑,我想可能需要同步设置。在我看来,您的要求似乎是为不同的用户提供相同应用程序的不同演示。有些连接到Web,有些连接到桌面。是否不可能为web和桌面同时拥有一个数据库(假设您位于数据库服务器所在的网络上,并且可以访问相同的数据库) 您是否想过使用智能客户端方法开发它? 我读到它确实为我们提供了离线数据缓存功能
这里有一些MSDN链接:只要知道您给出的高级别要求,我建议您研究一下Microsoft Sync框架。我曾在较小的应用程序上使用过它,并取得了巨大成功。如果桌面应用程序仅用于管理,您可以放弃它,编写web管理界面代码。然后,您可以使用类似于将web管理员带到桌面的功能。实际上,使用桌面的用户应该能够脱机工作(当internet不可用时)。并且桌面应用程序中的功能比web应用程序中的功能多得多(根据客户要求)