public ActionResult GerarDigitoVerificador()
        {
            string arquivoDownload = "";
            string arquivoUpload   = "";

            try
            {
                IFormFile arquivo = Request.Form.Files[0];

                arquivoUpload = SalvarArquivo(arquivo);

                arquivoDownload = Matriculas.GerarDigitosVerificadores(arquivoUpload);

                return(BaixarArquivo(arquivoDownload));
            }
            catch (System.Exception ex)
            {
                return(Json("Upload Failed: " + ex.Message));
            }
            finally
            {
                RemoverArquivo(arquivoDownload);
                RemoverArquivo(arquivoUpload);
            }
        }
        public void TestaExecutarValido()
        {
            string caminho = Path.Combine(_RootPath, "FileHandlerContext", "matriculasSemDV.txt");

            string[] linhas = System.IO.File.ReadAllLines(caminho);

            string caminhoComDV = Matriculas.GerarDigitosVerificadores(caminho);

            string[] linhasComDV = System.IO.File.ReadAllLines(caminhoComDV);

            Assert.AreEqual(linhas.Length, linhasComDV.Length);

            for (int i = 0; i < linhas.Length; i++)
            {
                int    dv    = DesafioHelper.CalcularLinha(linhas[i]);
                string linha = $"{linhas[i]}-{DesafioHelper.GerarDigitoVerificador(dv)}";
                Assert.AreEqual(linha, linhasComDV[i]);
            }
        }