У меня есть представление, в котором я отображал все записи из таблицы Requests
. У каждой записи есть кнопка сохранения и удаления, поэтому пользователь может добавить или удалить запрос в / из таблицы ReqHistory
.
Как я могу получить данные (идентификатор, заголовок, описание .et c) каждой записи из представления запроса и передать их моим действиям добавления / удаления в ReqHistoryController
?
Когда я отправляю форму, она не берет данные записи из представления.
Кто-нибудь может мне помочь?
Вот два действия из ReqHistoryController
:
public async Task<IActionResult> AddReqToHistory([Bind("ID, Title,Description,ImagePath")] Request model)
{
var currentUser = await _userManager.GetUserAsync(User);
var userId = await _userManager.GetUserIdAsync(currentUser);
var newReqHistory = new ReqHistory()
{
UserId = userId,
RequestId = model.ID,
Title = model.Title,
Description = model.Description,
CategoryID = model.CategoryID,
PersonID = model.PersonID,
ImagePath = model.ImagePath
};
_context.Add(newReqHistory);
await _context.SaveChangesAsync();
return RedirectToAction("Index", "Requests");
}
// POST
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> EliminateReqFromHistory(int requestId)
{
var reqHistory = await _context.ReqHistory.FindAsync(_userManager.GetUserId(User), requestId); //ReqHistory has a composite PK
_context.ReqHistory.Remove(reqHistory);
await _context.SaveChangesAsync();
return RedirectToAction("Index", "Requests");
}
ReqHistory
класс модели:
public class ReqHistory
{
[Key]
public string UserId { get; set; }
[Key]
public int RequestId { get; set; }
public ICollection<Request> Requests { get; set; } //1-M relationship
public string Title { get; set; }
public string Description { get; set; }
public string ImagePath { get; set; }
//one-to-one relationship
public int CategoryID { get; set; }
public Category Category { get; set; }
public int PersonID { get; set; } //FK
public Person Person { get; set; } //nav property
}
Вот вид ReqHistory
:
@model IEnumerable<App.Models.ReqHistory>
<table class="table table-condensed table-bordered">
<tr>
<th>
@Html.DisplayNameFor(model => model.RequestId)
</th>
<th>
@Html.DisplayNameFor(model => model.UserId)
</th>
...........................
</tr>
@foreach (var item in Model)
{
<tr>
<td>
@item.RequestId
</td>
<td>
@item.UserId
</td>
..................
</tr>
}
</table>