Элемент модели, переданный в ViewDataDictionary, имеет тип 'System.Collections.Generi c .List 1[website.Models.main]', but this ViewDataDictionary instance requires a model item of type 'System.Collections.Generic.List
1 [website.Models.List]'
Здесь я объединил четыре таблицы с помощью EF include метод. Эта ошибка возникает, когда я использую этот метод.
контроллер:
public IActionResult Index()
{
var listAll = db.main
.Include(x => x.Person)
.ThenInclude(x => x.Entity)
.ThenInclude(x => x.Country)
.ToList();
return View(listAll);
}
Просмотр: -
@model List<website.Models.List>
@{
ViewData["Title"] = "Index";
}
Модели: - Я не знайте, что я здесь сделал не так, дайте мне какие-нибудь решения
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Web;
using System.Collections;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace website.Models
{
public class List
{
public mainmain{ get; set; }
public Persons Person { get; set; }
public other other{ get; set; }
public Entities Entity { get; set; }
public Countries Country { get; set; }
public int countryId { get; internal set; }
}
public class main
{
public int id{ get; set; }
public int TypeId { get; set; }
public int? PersonId { get; set; }
}
public class Person
{
public Person()
{
main= new HashSet<main>();
}
public int PersonId { get; set; }
public string FirstNameEn { get; set; }
public string FirstNameAr { get; set; }
public string SecondNameAr { get; set; }
public string HomePhonePart1 { get; set; }
public string HomePhonePart2 { get; set; }
public ICollection<main> main{ get; set; }
}
public class Other
{
public int PersonId { get; set; }
public string FatherReligio { get; set; }
public bool? Fatherless { get; set; }
public DateTime? FatherDeathDate { get; set; }
public bool? Motherless { get; set; }
}
public classEntity
{
public Entity()
{
Persons = new HashSet<Persons>();
}
public int CountryId { get; set; }
public string Name { get; set; }
public string ResponsibleName { get; set; }
public string Address { get; set; }
public string Pobox { get; set; }
public string PhonePart1 { get; set; }
public string PhonePart2 { get; set; }
public ICollection<Persons> Persons { get; set; }
}
public class country
{
public country()
{
Entity = new HashSet<Entities>();
Persons = new HashSet<Persons>();
}
public string NameEn { get; set; }
public string NameFr { get; set; }
public string NameSp { get; set; }
public string NameUr { get; set; }
public virtual ICollection<Entities> Entity { get; set; }
public ICollection<Persons> Persons { get; set; }
}
}