Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.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# WPF WCF应用程序中的后台进程_C#_Wpf_Wcf_Web Services - Fatal编程技术网

C# WPF WCF应用程序中的后台进程

C# WPF WCF应用程序中的后台进程,c#,wpf,wcf,web-services,C#,Wpf,Wcf,Web Services,我需要执行一个过程,使用ftp下载一个文件,然后对其进行解析,并将结果用于更新数据库中的一些表 该系统是使用WPF客户端构建的,该客户端使用WCF服务与数据库进行通信 我需要从WPF应用程序开始这个过程。现在我的问题是: 我应该在客户端下载文件,然后使用wpf解析数据并使用服务进行更新吗 或者我应该将文件下载到托管服务的服务器上,然后继续更新那里的数据库?如果是这样,我如何向客户提供流程正在运行/完成等反馈 我推荐第二种选择,但我不确定如何在后台流程中实现反馈 谢谢您的问题可能有很多解决方案,但

我需要执行一个过程,使用ftp下载一个文件,然后对其进行解析,并将结果用于更新数据库中的一些表

该系统是使用WPF客户端构建的,该客户端使用WCF服务与数据库进行通信

我需要从WPF应用程序开始这个过程。现在我的问题是:

我应该在客户端下载文件,然后使用wpf解析数据并使用服务进行更新吗

或者我应该将文件下载到托管服务的服务器上,然后继续更新那里的数据库?如果是这样,我如何向客户提供流程正在运行/完成等反馈

我推荐第二种选择,但我不确定如何在后台流程中实现反馈


谢谢

您的问题可能有很多解决方案,但我现在能想到两个

  • 您可以在数据库表中维护一个标志。WPF应用程序中的后台线程将按设置的时间间隔轮询并读取标志以更新状态

  • 您可以使用FileSystemWatcher。如果您在Intranet上,并且可以写入正在处理的文件。FileSystemWatcher可以在WPF应用程序中引发事件