Как следует из названия, мой друг получает эту ошибку на веб-сайте, который я сделал.
Когда он пытался добавить автомобиль в базу данных.
Ошибка:
Он прислал мне эту фотографию.
В машине есть эти реквизиты:
public class CarModel
{
[Key]
public int Id { get; set; }
[DisplayName("Årsmodel")]
public int Year { get; set; }
[DisplayName("Märke")]
[StringLength(100)]
public string Brand { get; set; }
[DisplayName("Modell")]
[StringLength(160)]
public string Model { get; set; }
[DisplayName("Hästkrafter")]
public int HorsePower { get; set; }
[DisplayName("Färg")]
[StringLength(160)]
public string Color { get; set; }
[DisplayName("Fyrhjulsdrift")]
public bool IsFourWheelDrive { get; set; }
[DisplayName("Pris")]
[Range(0,int.MaxValue)]
public int Price { get; set; }
[DisplayName("Övrigt/Beskrivning")]
[StringLength(1000)]
public string Description { get; set; }
[DisplayName("Miltal")]
public int Miles { get; set; }
[DisplayName("Bränsle")]
public string Fuel { get; set; }
[DisplayName("Automatlåda")]
public bool IsAutomatic { get; set; }
[DisplayName("Bilder")]
public List<PicturePathModel> Pictures { get; set; }
[DisplayName("Är bilen påväg?")]
public bool IsOnTheWay { get; set; }
}
PicutePathModel - это просто модель с путем к изображениям.
Заполненная форма имеет 12 входных данных (строки, целые и bools)
и один селектор файлов.
Я предполагаю, что ошибка связана с селектором файлов.
Почему он получает эти ошибки, а не я? Это потому, что он старше ПК?
Что его браузер не поддерживает селектор файлов?
Вот метод контроллера:
[HttpPost]
public async Task<IActionResult> CreateCar(CreateCarVM VM)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
var CarToSave = VM.Car;
if (VM.Images != null)
{
string webRootPath = _hostingEnvironment.WebRootPath;
var listOfPaths = new List<PicturePathModel>();
var randomName = Guid.NewGuid().ToString();
var SaveFileIn = Path.Combine(webRootPath, "images", randomName);
var pathToSaveFileIn = "/images/"+randomName;
Directory.CreateDirectory(SaveFileIn);
foreach (var file in VM.Images)
{
if (file.Length > 0)
{
var path = new PicturePathModel()
{
Path = Path.Combine(pathToSaveFileIn, file.FileName)
};
using (var stream = new FileStream(Path.Combine(SaveFileIn, file.FileName), FileMode.Create))
{
await file.CopyToAsync(stream);
}
path.CarModelId = VM.Car.Id;
Console.WriteLine(pathToSaveFileIn);
listOfPaths.Add(path);
_context.Pictures.Add(path);
}
}
CarToSave.Pictures = listOfPaths;
}
//Save the car.
_context.CarModels.Add(CarToSave);
await _context.SaveChangesAsync();
return View(VM);
}
В чем может быть проблема?
Очень благодарен за каждый ответ.