Broken logic again. You allocate an object and then overwrite it. Every method should start from error checking and you should check explicitly for error conditions. In your case:

if (!File.Exists(fileName))
{
  var result = new UploadResult() 
   {
      Status = "Failed"
    }
   return result;
  
}