Код: Выделить всё
Resident ID
First Name
Middle Name
Last Name
View
@foreach (var resident in Model)
{
@resident.ResidentID
@resident.FirstName
@resident.MiddleName
@resident.LastName
View
}
Код: Выделить всё
$('#residentModal').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget);
var resident = button.data('resident');
console.log('Resident data:', resident); // Log the entire resident object to console
var modal = $(this);
modal.find('#modalResidentID').text(resident.residentID);
modal.find('#modalFirstName').text(resident.firstName);
modal.find('#modalMiddleName').text(resident.middleName);
modal.find('#modalLastName').text(resident.lastName);
modal.find('#modalBirthdate').text(resident.birthdate);
modal.find('#modalAge').text(resident.age);
modal.find('#modalEmail').text(resident.email);
modal.find('#modalCreationDate').text(resident.creationDate);
modal.find('#modalModifiedBy').text(resident.modifiedBy);
modal.find('#modalModifiedDate').text(resident.modifiedDate);
// Check if addresses are defined and not empty
if (resident.addresses && resident.addresses.length > 0) {
var addresses = resident.addresses;
var addressList = modal.find('#modalAddresses').empty();
addresses.forEach(function (address) {
addressList.append('[*]' + address.street + ', ' + address.city + ', ' + address.state + ', ' + address.zipCode + '');
});
} else {
modal.find('#modalAddresses').html('[*]No addresses found.');
}
// Check if contacts are defined and not empty
if (resident.contacts && resident.contacts.length > 0) {
var contacts = resident.contacts;
var contactList = modal.find('#modalContacts').empty();
contacts.forEach(function (contact) {
contactList.append('[*]' + contact.contactType + ': ' + contact.contactValue + '');
});
} else {
modal.find('#modalContacts').html('[*]No contacts found.');
}
});
Код: Выделить всё
public async Task Manage()
{
var residents = await _context.WMS_Resident
.Include(r => r.Addresses)
.Include(r => r.Contacts)
.ToListAsync();
var residentViewModels = residents.Select(r => new ResidentViewModel
{
ResidentID = r.ResidentID,
FirstName = r.FirstName,
MiddleName = r.MiddleName,
LastName = r.LastName,
Birthdate = r.Birthdate,
Age = r.Age,
Email = r.Email,
CreationDate = r.CreationDate,
ModifiedBy = r.ModifiedBy,
ModifiedDate = r.ModifiedDate,
Addresses = r.Addresses.Select(a => new AddressViewModel
{
AddressID = a.AddressID,
ResidentID = a.ResidentID,
AddressType = a.AddressType,
HouseNumber = a.HouseNumber,
Street = a.Street,
Barangay = a.Barangay,
CreationDate = a.CreationDate,
ModifiedBy = a.ModifiedBy,
ModifiedDate = a.ModifiedDate
}).ToList(),
Contacts = r.Contacts.Select(c => new ContactViewModel
{
ContactID = c.ContactID,
ResidentID = c.ResidentID,
ContactType = c.ContactType,
ContactNumber = c.ContactNumber,
CreationDate = c.CreationDate,
ModifiedBy = c.ModifiedBy,
ModifiedDate = c.ModifiedDate
}).ToList()
}).ToList();
return View(residentViewModels);
}
Код: Выделить всё
Resident Details
×
[b]Resident ID:[/b]
[b]First Name:[/b]
[b]Middle Name:[/b]
[b]Last Name:[/b]
[b]Birthdate:[/b]
[b]Age:[/b]
[b]Email:[/b]
[b]Creation Date:[/b]
[b]Modified By:[/b]
[b]Modified Date:[/b]
Addresses
[list][/list]
Contacts
[list][/list]


В этом сценарии Manage.cshtml отображает все резидентные элементы, но в ограниченных полях, кроме резидент хочет просмотреть всю информацию, просто нажав кнопку просмотра, он отображает все детали резидента через модальное окно.
Но я столкнулся с проблемой, когда нажал кнопку просмотра конкретного резидента модальной информации. NULL
Кто-нибудь может мне помочь с этой проблемой
Подробнее здесь: https://stackoverflow.com/questions/787 ... -using-asp