ASP MVC - элемент модели, переданный в словарь, имеет тип… но для этого словаря требуется элемент модели типа

У меня проблема с ASP MVC. У меня есть следующий контроллер:

    public ActionResult Datos()
    {
        personaModel persona;
        persona = (personaModel)Session["personaLogedIn" + Session.SessionID];
        return View(persona);
    }

И следующий вид:

@model ProgIII_EasyFitness_RoccaFederico.Models.personaModel

@{
    ViewBag.Title = "Datos";
    Layout = "~/Views/Shared/_LayoutAlumno.cshtml";
}

<h2>Datos</h2>
...

Проблема в том, что когда я получаю доступ к этому виду, входя через контроллер, приложение выдает мне следующее исключение :

Элемент модели, передаваемый в словарь, имеет тип 'ProgIII_EasyFitness_RoccaFederico.Models.personaModel', но для этого словаря требуется элемент модели типа 'ProgIII_EasyFitness_RoccaFederico.Service.personaService'.

То, что я не понимаю, является причиной, так как тип данных, которые я возвращаю в контроллер, - это тот же тип данных из модели представления.

personaModel - мой класс данных:

namespace ProgIII_EasyFitness_RoccaFederico.Models
{
    public class personaModel
    {
        public long id { get; set; }
        public string nombre { get; set; }
        public string apellido { get; set; }
        public int dni { get; set; }
        public DateTime fechaNacimiento { get; set; }
        public usuarioModel user { get; set; }
        public personaModel()
        {
            if(user == null)
            {
                user = new usuarioModel();
            }
        }
    }
}

В то время как personaService - это класс только с методами:

namespace ProgIII_EasyFitness_RoccaFederico.Service
{
    public class personaService
    {
        public personaModel getPersonaByMailAndDNI(string Mail, int DNI)...
        public personaModel getPersonaByMailAndPassword(string Mail, string password)...
        public bool checkPersonExistence(personaModel persona)...
        public void newPersona(personaModel persona)...
        public long getLastPersonaID()...
    }
}

Любая помощь?

1
задан 28.11.2019, 05:15
1 ответ

Возможно имей два директивных органа @model, что estén вмешивая одну с другой.

Обычно происходит, когда мы определяем один @model в Виде и другом в pÃ: gina учительница.

Проверяет твой pÃ: gina учительница _LayoutAlumno.cshtml посмотрим у тебя есть один @model ProgIII_EasyFitness_RoccaFederico.Service.personaService и elim¦-nalo.

0
ответ дан 01.12.2019, 10:43

Теги

Похожие вопросы