我有一个从联网计算机收集文件并将它们存储到本地目录的程序。这是每小时完成一次,我希望把它变成一个将在后台运行的服务,但是有一个小应用程序正在运行,它会制作一个系统托盘图标,这个图标将允许用户打开一个 GUI,他们可以在其中修改位置将文件保存到和从中检索文件的位置,以及为用户定义的日期时间范围手动收集文件。我很好奇 GUI 是否只是一个前端,并且所有“繁重”的方法都在服务中完成,我如何从 GUI 访问这些服务功能?例如,如果以下是我的服务(非常粗糙的版本):
partial class RemoteArchiveService : ServiceBase
{
...
...
string destination;
string retrieveFrom;
List<string> fileNames;
public void ChangeCollectFrom(string filepath){...}
public void ChangeDestinationFolder(string filepath){...}
public void GetFilesAsynchronously(){...}
...
...
}
在 GUI 代码中,如何使用新的用户输入字符串访问函数 ChangeCollectionFrom()?