Отправка объектов контроллеру, включая внешний ключC#

Место общения программистов C#
Ответить
Anonymous
 Отправка объектов контроллеру, включая внешний ключ

Сообщение Anonymous »

Я пытаюсь создать объект с именем Facture, у которого есть внешний ключ Client:
public class Facture
{
public int Id { get; set; }

[ValidateNever]
[DataType(DataType.Date)]
public DateTime? DateCreation { get; set; }

[Required]
[DataType(DataType.Date)]
[Display(Name = "Date de facturation")]
public DateTime DateFacturation { get; set; }

[DataType(DataType.Date)]
[Display(Name = "Date d'échéance")]
public DateTime? DateEcheance { get; set; }

[ValidateNever]
public required Client Client { get; set; }
}

public class Client
{
public int Id { get; set; }

[Required]
public required string Name { get; set; }

ICollection? Factures { get; set; }
}

Дело в том, что я не знаю, как получить значение Client, отправленное из представления. Я заполнил такой раскрывающийся список в своем FacturesController:
public IActionResult Create()
{
ViewBag.Client = new SelectList(_context.Client, "Id", "Name");
return View();
}

И в представлении Facture:




















И я не знаю, как получить значение client во втором методе Create:
public async Task Create([Bind("Id,DateFacturation,DateEcheance,Client")] Facture facture)
{
if (ModelState.IsValid)
{
facture.DateCreation = DateTime.Now;
_context.Add(facture);
await _context.SaveChangesAsync();
return RedirectToAction(nameof(Index));
}

return View(facture);
}


Подробнее здесь: https://stackoverflow.com/questions/790 ... oreign-key
Ответить

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

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

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

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

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