目前我正在编写 Windows 服务来处理大量 xml 文件并将信息从 xml 文件保存到数据库。有 3 台机器运行指向相同共享位置的相同服务。在这个过程中我总是遇到文件未找到的异常,不知道如何解决这个问题。我试图从目录中获取所有文件并根据机器名称重命名这些文件,并允许每台机器处理它自己的一组文件,但仍然遇到 File Not Found 异常。谁能告诉我处理这个问题的正确方法。
谢谢你。
代码
if (Directory.Exists(folder))
{
string pattern = ".xml";
string machineName = System.Environment.MachineName;
string[] files = Directory.GetFiles(folder, pattern, SearchOption.AllDirectories);
newExt = string.Format("{0}.{1}", machineName, newExt);
for (int i = 0; i < files.Length; i++)
{
if (files[i].Contains(machineName))
{
//replace this new extension
files[i].Replace(machineName + ".", "");
}
else
{
files[i] = ChangeExtension(files[i], newExt, true);
}
}
IEnumerable<string> sortedFiles = files.Where(f => !string.IsNullOrEmpty(f) && f.Contains(machineName))
.OrderBy(f => f, Sorter);
}