Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
频繁在线同步的C#桌面应用程序_C#_.net_Offline Caching - Fatal编程技术网

频繁在线同步的C#桌面应用程序

频繁在线同步的C#桌面应用程序,c#,.net,offline-caching,C#,.net,Offline Caching,我将开发一个病人管理系统,它将是一个内置于c#.Net的桌面应用程序 问题是,许多医生将要使用它,不同的房间之间不能联网,因为这是政府医院和医生之间的联网,或者他们自己做的联网,所以他们负担不起联网基础设施,他们所能做的是,只要计算机上有互联网,他们就可以连接到互联网。 这是我需要的。在安装系统的每台机器上都会有一个本地数据库,只要互联网可用,用户点击update按钮,数据库就会更新。 系统还允许用户更新在线数据库。因此,需要同时支持推送和拉送操作。 现在问:.Net支持这种功能吗。如果是,那

我将开发一个病人管理系统,它将是一个内置于c#.Net的桌面应用程序
问题是,许多医生将要使用它,不同的房间之间不能联网,因为这是政府医院和医生之间的联网,或者他们自己做的联网,所以他们负担不起联网基础设施,他们所能做的是,只要计算机上有互联网,他们就可以连接到互联网。

这是我需要的。在安装系统的每台机器上都会有一个本地数据库,只要互联网可用,用户点击
update
按钮,数据库就会更新。 系统还允许用户更新在线数据库。因此,需要同时支持推送和拉送操作。


现在问:.Net支持这种功能吗。如果是,那么有任何特定的api,如果没有,我有什么选择

c#支持这种功能吗

是的,这叫做编程。C#是一种语言(根据langauge规范)。它支持任何程序

如果是,那么有任何特定的api,如果没有,我有什么选择

在C#中没有,没有。C#根本没有API——甚至连在控制台上写一行的API都没有(console.WriteLine是.NET framework的API,而不是C#应用程序的API)


Microsoft有一个同步框架,如果您起诉SQL Server或为此编写自己的提供程序,您可以使用它。检查此框架的起点。

如果要通过互联网传输患者记录,则必须仔细考虑这样做的合法性。这几乎肯定会涉及到确保患者记录的存储和传输是加密的,存储记录的服务器经过仔细配置,并使用必要的安全更新进行维护,访问这些数据的医生的PC经过验证,被允许这样做(认证为合法,并被授权访问特定记录)

任何错误都可能导致机密患者数据泄露,这可能导致您的手术(以及您自己)面临诉讼。如果发现您疏忽大意,您甚至可能面临刑事指控的风险。(伊纳尔,您需要自己进行尽职调查。)

就我个人而言,我建议您尽一切努力将局域网安装到位。这将消除这些法律问题中更敏感的问题,因为您将不再与公共网络连接。联网既不昂贵也不困难,如果您解释情况并提供删除其成本的详细信息


如果您有多台医生PC,每台都在更新自己的本地数据缓存,然后定期更新集中存储,那么迟早您会发现最终会出现数据冲突。简单的系统只会用最近推送的更改覆盖旧数据,丢失任何早期的独立更改。如我猜你不希望数据丢失,那么你需要选择一种策略来避免这种情况。这可能涉及到记录锁定或某种形式的冲突解决。看看维基百科的文章。

c#支持它,你的另一个选择是将其构建为web应用程序。你是否合法?这闻起来像是在痛苦的世界中。医学互联网上的ical信息-在没有大量编程的大多数司法管辖区,这是非法的。请查看。但是,这个问题对于堆栈溢出来说太广泛了。我想这正是您要寻找的。