У меня есть отношения ко многим ко многим для:
Компания -----> CompanyVenue <------
Место проведения </p>
В настоящее время я могу добавить объекты для компаний и компании к объектам.
Ссылка Add Venue приводит пользователя к этому представлению: (используя эту логику контроллера):
var venue = context.Companies.Select(x => x.Venues.Where(xy => xy.VenueId == id));
var company = venue.Select(x => x.);
ViewData["CompanyFor"] = company;
ViewData["VenueFor"] = venue;
Когда пользователь выбирает место и нажимает кнопку ADD VENUE , он передает ViewModel обратно в контроллер:
Company c = context.Companies.Single(x => x.CompanyId == model.CompanyId);
Venue v = context.Venues.Single(x => x.VenueId == model.VenueId);
c.Venues.Add(v);
context.SaveChanges();
Так вот как я заполучил добавление Много-Много. Но я ищу некоторую помощь с удалением кодом контроллера / представлением (если необходимо) /, возможно, моделью представления (но на самом деле не вижу необходимости в простом действии)
В представлении сведений о компании я пытаюсь получить УДАЛИТЬ ссылку под каждым элементом объекта, чтобы удалить отношение [CompanyVenue] (many2many).
Если возможно передать 2 значения вместо одного, используя этот тип ActionLink ():
@Html.ActionLink("Remove", "VenueRemove", new { Id = venue.VenueId }, new { Cid = model.CompanyId } )
было бы легко, но я не нашел способ (метод загрузки) передать оба значения (Id и Cid) обратно в действие контроллера VenueRemove (), которое затем вернет RedirectToAction () обратно в компанию Детальный просмотр.
Если кто-то знает, как это сделать, пожалуйста, дайте мне знать. (Спасибо, Дарин, за это замечание)
Я пошел дальше и получил «Удалить работу с использованием представления».
Но есть ли способ заставить «Удалить» работать, просто щелкнув по кнопке «УДАЛИТЬ» / «УДАЛИТЬ» и заставив ее удалить место, не переходя к виду?
Может быть, запрос AJAX или что-то .... ???