Handling FileContentResult quando o arquivo não for encontrado
Tenho uma ação de controlador que baixa um arquivo de um blob azul com base no nome de referência do contêiner (ou seja, o nome do caminho completo do arquivo no blob). O código é mais ou menos assim:
public FileContentResult GetDocument(String pathName)
{
try
{
Byte[] buffer = BlobStorage.DownloadFile(pathName);
FileContentResult result = new FileContentResult(buffer, "PDF");
String[] folders = pathName.Split(new char[] { '\\' }, StringSplitOptions.RemoveEmptyEntries);
// get the last one as actual "file name" based on some convention
result.FileDownloadName = folders[folders.Length - 1];
return result;
}
catch (Exception ex)
{
// log error
}
// how to handle if file is not found?
return new FileContentResult(new byte[] { }, "PDF");
}
OBlobStorage
class: existe a minha classe auxiliar para baixar o fluxo do blob.
Minha pergunta é declarada no comentário do código: Como devo lidar com o cenário quando o arquivo / fluxo não foi encontrado? Atualmente, estou passando um arquivo PDF vazio, que considero não ser a melhor maneira de fazê-lo.