Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.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 - Fatal编程技术网

C# 文件复制方法

C# 文件复制方法,c#,.net,C#,.net,下面的代码是否可能不会引发任何异常,也不会复制文件 void Copy2(string from, string to) { lock (_thisLock) { if (File.Exists(from)) { File.Copy(from, to, true); return; } Logger.Write("File does not exists"); } } 客户表示应用程序不会崩溃,不会复制任何

下面的代码是否可能不会引发任何异常,也不会复制文件

void Copy2(string from, string to)
{
    lock (_thisLock)
    {
     if (File.Exists(from))
     {
      File.Copy(from, to, true);
      return;
     }
     Logger.Write("File does not exists");
    }
}
客户表示应用程序不会崩溃,不会复制任何文件,也不会写入日志。
记录器的类型是Microsoft.Practices.EnterpriseLibrary.Logging.Logger

当然,如果文件不存在-
(!file.Exists)
,则不会调用
文件.Copy

Logger.Write
不算例外


如您的更新所示,如果日志中没有任何内容,我将再次检查
Logger.Write
函数。它的实施是否正确?是否在该方法中引发和处理异常?这比
File.Copy
在不引发异常的情况下失败的可能性更大。

当然,如果该文件不存在-
(!File.Exists)
,则不会调用
File.Copy

Logger.Write
不算例外


如您的更新所示,如果日志中没有任何内容,我将再次检查
Logger.Write
函数。它的实施是否正确?是否在该方法中引发和处理异常?这比
File.Copy
在不引发异常的情况下失败的可能性更大。

如果文件不存在且未配置记录器附加器,则可能会出现您描述的情况-即,如果文件不存在且未配置记录器附加器,则不会发生错误,也不会记录日志,然后,您描述的情况可能会发生,即没有错误,没有日志记录。查看您可以看到,它引发了很多异常。让您知道,在堆栈上方捕获异常的任何东西都能正确地处理该异常/错误,而不是简单地吞咽它。

查看您可以看到它抛出了相当多的异常。让您知道,在堆栈上方捕获异常的任何东西都能正确地处理该异常/错误,而不是简单地吞咽它

如果“from”文件不存在,它不会做任何事情,但我假设这不是您的问题……您能再次检查记录器配置吗?如果“from”文件不存在它不会做任何事情,但我假设这不是您的问题…您可以再次检查记录器配置吗?记录器的类型是Microsoft.Practices.EnterpriseLibrary.Logging.logger然后您需要确保已正确配置记录器。查看有关使用MSEL日志框架的相当详细的概述。记录器的类型为Microsoft.Practices.EnterpriseLibrary.Logging.Logger然后需要确保已正确配置记录器。查看有关使用MSEL日志框架的相当详细的概述。