Я студент-разработчик в Asp.Net MVC.Я делаю небольшие .Net MVC проекты для изучения своих собственных, и я впервые сталкиваюсь со многими во многих отношениях между таблицами.У меня есть две модели, которые имеют отношение ко многим usersModel
и groupsModel
.Они ассоциируются у usersgroupModel
во многих отношениях.В моем домашнем контроллере я попытался перечислить содержимое таблиц с кодами LinkQ.Но я этого не сделал.Когда я запускаю свой проект, в моей Index.cshtml
Модель обнуляется.И в этом случае мой взгляд посылает мне ошибку типа
'System.Data.Entity.Infrastructure.DbQuery 1[<>f__AnonymousType2
2 [System.String, System.String]]', но этот словарьтребуется элемент модели типа 'System.Collections.Generic.IEnumerable`1 [Agm.Models.EntityFramework.Groups]' ... *
Что я могу сделать, чтобы вывести свои данные в соответствии с userId и groupIdна моей странице индекса?Не могли бы вы помочь мне в этом вопросе?Спасибо за это.
Модель моих пользователей;
public class usersModel
{
public int userId { get; set; }
public string userNameSurname { get; set; }
public virtual ICollection<Groups> Groups { get; set; }
}
Модель моих групп:
public class groupsModel
{
public int groupId { get; set; }
public string groupName { get; set; }
public virtual ICollection<Users> Users { get; set; }
}
Мой контроллер:
public ActionResult Index()
{
var userGroups = from g in db.Groups
from u in g.Users
select new
{
g.groupName,
g.groupImageUrl
};
return View(userGroups);
}
Мой индексстраница:
@model IEnumerable<Agm.Models.EntityFramework.Groups>
<table class="table">
<tr>
<th>
@Html.DisplayNameFor(model => model.groupName)
</th>
<th>
@Html.DisplayNameFor(model => model.groupImageUrl)
</th>
<th></th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.groupName)
</td>
<td>
@Html.DisplayFor(modelItem => item.groupImageUrl)
</td>
</tr>
}
</table>