Отношения модели C# m:n (страницы бритвы)C#

Место общения программистов C#
Anonymous
Отношения модели C# m:n (страницы бритвы)

Сообщение Anonymous »

Я пытаюсь установить связь m:n между моей моделью актера (actor.cs) и (movie.cs). Я уже создал соединительную таблицу actormovie.cs с соответствующими FK и свойствами навигации для этих моделей. Все три модели созданы на основе страниц CRUD. Я пытаюсь обеспечить обязательное участие как для актера, так и для фильма, поэтому актер играет в 1 или нескольких фильмах, а в фильме есть 1 или несколько актеров. Я ищу отношения m:n с обоими объектами, имеющими обязательное участие. . Мой вопрос: как я могу обеспечить участие их субъектов? В настоящее время пользователю приходится перейти на мою страницу создания соединительной таблицы (ActorMovie), чтобы сопоставить актера с фильмом, что, похоже, не «обеспечивает» необходимое участие обоих объектов.

Код: Выделить всё

// actor model
public class Actor
{
public int actorID { get; set; }
public string? actorName { get; set; }
public double actorRating { get; set; }

public int actorMovieCount { get; set; }

public double actorEXP { get; set; }

public List ? ActorMovies { get; set; }
}

// movie model

public class Movie
{
public int Id { get; set; }
public string? Title { get; set; }
[Display(Name = "Release Date")]
[DataType(DataType.Date)]
public DateTime ReleaseDate { get; set; }
public string? Genre { get; set; }
[Column(TypeName = "decimal(18, 2)")]
public decimal Price { get; set; }
public string Rating { get; set; } = string.Empty;

public List? ActorMovies { get; set; }
}

// junction table
public class ActorMovie
{

public int ID { get; set; }
public Actor? Actor { get; set; }
public int? actorID { get; set; }

public Movie? Movie { get; set; }
public int? MovieID { get; set; }
}

Я запустил свое приложение и создал актеров, а также фильмы на страницах создания обоих, но мне нужно перейти к созданию страницы соединительной таблицы, чтобы сопоставить актера с фильмом, наоборот. Я ищу способ обязать их участие в создании при создании.

Подробнее здесь: https://stackoverflow.com/questions/790 ... azor-pages

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