/// <summary> /// Upload Files /// </summary> private void UploadFiles() { if (this.FileNames == null) { throw new ArgumentException("Required parameter missing: FileNames."); } using (FtpConnection ftpConnection = this.CreateFtpConnection()) { this.LogBuildMessage("Uploading Files", BuildMessageImportance.Low); if (!string.IsNullOrEmpty(this.WorkingDirectory.Get(this.ActivityContext))) { this.LogBuildMessage(string.Format(CultureInfo.CurrentCulture, "Setting Working Directory: {0}", this.WorkingDirectory.Get(this.ActivityContext)), BuildMessageImportance.Low); FtpConnection.SetLocalDirectory(this.WorkingDirectory.Get(this.ActivityContext)); } ftpConnection.LogOn(); if (!string.IsNullOrEmpty(this.RemoteDirectoryName.Get(this.ActivityContext))) { this.LogBuildMessage(string.Format(CultureInfo.CurrentCulture, "Setting Current Directory: {0}", this.RemoteDirectoryName.Get(this.ActivityContext)), BuildMessageImportance.Low); ftpConnection.SetCurrentDirectory(this.RemoteDirectoryName.Get(this.ActivityContext)); } foreach (string fileName in this.FileNames.Get(this.ActivityContext)) { try { if (File.Exists(fileName)) { this.LogBuildMessage(string.Format(CultureInfo.CurrentCulture, "Uploading: {0}", fileName), BuildMessageImportance.Low); ftpConnection.PutFile(fileName); } } catch (FtpException ex) { this.LogBuildWarning(string.Format(CultureInfo.CurrentCulture, "There was an error uploading file: {0}. The Error Details are \"{1}\" and error code is {2} ", fileName, ex.Message, ex.ErrorCode)); } } } }