我正在为客户开发一个会计系统。此应用程序有一些特殊要求。我留下了特定于帐户的会计系统详细信息。我提到了那些让我感到困惑的观点。
该应用程序应在在线和离线环境中工作。如果用户正在工作并且突然应用程序脱机用户应该能够脱机工作。所有离线工作都存储在本地数据库中,并在下次应用程序连接到互联网时同步到中央数据库。这个应用程序有很多用户,所有用户都将同时处理相同的信息。
例如,如果一个用户输入了一个库存项目,那么另一个用户可能在那个时候也输入了相同的项目。应用程序应该能够验证正确的信息并禁止用户复制。
用户本地数据库必须在其他用户工作或不工作时随时更新。如果其他用户正在工作,则所有更新的信息都应该在本地数据库中可用,以确保用户离线时所有信息都得到更新。
问题是如何开发这种应用程序?有没有实现这个目标的标准方法?是否有任何标准或非标准模式来构建此类软件?
请注意,我正在使用 C# Dot Net 并打算为此应用程序使用 .NET Remoting 或 WCF 或 ASP.NET MVC。
任何形式的帮助将不胜感激。谢谢。