Невозможно вернуть значение NULL из метода действия с типом возвращаемого значения «Microsoft.AspNetCore.Mvc.IActionResuC#

Место общения программистов C#
Ответить
Anonymous
 Невозможно вернуть значение NULL из метода действия с типом возвращаемого значения «Microsoft.AspNetCore.Mvc.IActionResu

Сообщение Anonymous »

Дорогие, я использую asp.net core 3.1, проблема при загрузке дает мне эту ошибку (невозможно вернуть значение null из метода действия с типом возврата «Microsoft.AspNetCore.Mvc.IActionResult)
это модель
{
public class Files
{
[Key]
public int DocumentId { get; set; }
public string Name { get; set; }
public string FileType { get; set; }
public byte[] DataFiles { get; set; }
}
}

это контроллер
namespace Info.Controllers
{
public class DemoController : Controller
{
private readonly ApplicationDbContext _context;

public DemoController(ApplicationDbContext context)
{
_context = context;
}

public IActionResult Index()
{
var result = _context.Files.ToList();
return View(result);
}

[HttpPost]
public IActionResult Index(IFormFile files)
{
if (files != null)
{
if (files.Length > 0)
{
//Getting FileName
var fileName = Path.GetFileName(files.FileName);
//Getting file Extension
var fileExtension = Path.GetExtension(fileName);
// concatenating FileName + FileExtension
var newFileName = String.Concat(Convert.ToString(Guid.NewGuid()), fileExtension);

var objfiles = new Files()
{
DocumentId = 0,
Name = newFileName,
FileType = fileExtension,
};

using (var target = new MemoryStream())
{
files.CopyTo(target);
objfiles.DataFiles = target.ToArray();
}

_context.Files.Add(objfiles);
_context.SaveChanges();
}
}

return RedirectToAction("Index");
}

// public IActionResult DownloadImage(int id)
// {
// byte[] bytes;
// string fileName, contentType;

// var item = _context.Files.FirstOrDefault(c => c.DocumentId == id);

// if (item != null)
// {
// fileName = item.Name;

// contentType = item.FileType;
// bytes = item.DataFiles;

// return File(bytes, contentType, fileName);
// }

// return View();
// }
public async Task DownloadImage(int id)
{
var file = await _context.Files.Where(x => x.DocumentId == id).FirstOrDefaultAsync();
if (file == null) return null;
return File(file.DataFiles, file.Name + file.FileType);
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/748 ... oft-aspnet
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»