2013-07-21 8 views
1

* CORRECTIONмодель элемент передается в словарь типа 'System.Collections.Generic.List`1 [X], но этот словарь требует модель элемента типа «X»

Проблема возникает, когда мое представление вызвано для заполнения списка из моей таблицы пользователя.

Элемент модели, переданный в словарь, имеет тип «System.Collections.Generic.List`1 [Mike.Models.User]», но для этого словаря требуется элемент модели типа «Mike.Models.User», ,

Вот мой контроллер действия:

public ActionResult Registration(Mike.Models.User user) 
    { 
     if (ModelState.IsValid) 
     { 
      using (var db = new UserContext()) 
      { 

       var crypto = new SimpleCrypto.PBKDF2(); 
       var encrypPass = crypto.Compute(user.password); 
       var sysUser = db.Users.Create(); 

       sysUser.LastName = user.LastName; 
       sysUser.FirstName = user.FirstName; 
       sysUser.Email = user.Email; 
       sysUser.password = encrypPass; 
       sysUser.passwordSalt = crypto.Salt; 
       sysUser.UserID = user.UserID; 
       db.Users.Add(sysUser); 
       db.SaveChanges(); 

       return RedirectToAction("Index", "Home"); 
      } 


     } 

     return View(user); 
    } 

Может кто-то пожалуйста, помогите мне .... Есть ответы на подобные вопросы в Интернете, но я считаю, у меня это уникальный .. Я искал в течение нескольких недель до нет.

Спасибо заранее,

Рениор

Вот мой простой контроллер действий ...

public ActionResult Index() 
    { 

     return View(db.Users.ToList()); 

    } 

и мой синтаксис бритвой.

@model IEnumerable

Im пытаясь заполнить представление моего списка таблицы пользователя ..

+0

Вы можете разместить свое мнение? – Thousand

ответ

2

С Вашей точки зрения регистрации в наверху, где указано ваше типовое заявление:

@model List<Mike.Models.User> 

вам нужно иметь:

@model Mike.Models.User 

Вы, вероятно, использовали сильно типизированных функцию люльки, чтобы сгенерировать вид, но вместо того, чтобы данные опции вы выбрали вариант списка ...

+0

Спасибо, сэр за ваш комментарий .. Я попробовал ваше предложение но безрезультатно. Я благодарю тебя... – digiShadoe

2

Возьмите это на лицо ценность - твое не является уникальным. Ваша проблема заключается в том, что вы передаете массив пользователей в действие контроллера, которое ожидает пользователя.

Вы должны разместить свой HTML, но это, вероятно, что-то вроде @model. Перечислите пользователя или что-то вместо одного пользователя.

Если ваша модель представляет одного пользователя, передайте ее контроллеру. Если напротив, делать противоположное,

Если вы хотите, чтобы передать список на использование контроллера пользователей список

редактировать

сделать вашу бритву синтаксис

@model Mike.Models.User 
+0

WOW .. Это было быстро .. Я благодарю вас за ваше время ... Я пробовал ваши предложения, и ошибка по-прежнему сохраняется .. вот мое действие контроллера и HTML – digiShadoe

Смежные вопросы

 Смежные вопросы