311 messaggi dal 25 novembre 2010
ciao!
seguendo alcune guide, ho messo su i vari componenti per eseguire una query su db.
ma incappo in un errore.
questo il model:
    public class LavoriModels : DbContext
    {
        public LavoriModels()
            : base("MYCONN") { }

        public DbSet<Lavori> lavori { get; set; }
    }

    [Table("lavori")]
    public class Lavori
    {
        [Key]
        [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
        public int l_id { get; set; }
        public string l_testo { get; set; }
    }

nel controller:
        private LavoriModels lm = new LavoriModels();

        public ActionResult Index()
        {
            var model = lm.lavori;
            return View(model.ToList());
        }

nella view:
@model IEnumerable<Models.LavoriModels>
<ul>
    @foreach (var item in Model)
    {
        <li>@Html.DisplayFor(model => item.l_id)</li>
    }
</ul>

questo l'errore:
L'elemento del modello passato nel dizionario è di tipo 'System.Collections.Generic.List`1[Models.Lavori]', tuttavia il dizionario richiede un elemento di modello di tipo 'System.Collections.Generic.IEnumerable`1[Models.LavoriModels]'.

sinceramente non so come risolvere!!
non so più dove cercare.
avete qualche suggerimento??
visto che ti dice che vuole in IEnumerable invece di un IList, hai provato con:
return View(model.AsEnumerable());


oppure cambiando in:
@model IList<Models.LavoriModels>

Non hai veramente capito qualcosa fino a quando non sei in grado di spiegarlo a tua nonna.
-Albert Einstein-
311 messaggi dal 25 novembre 2010
ciao!!
in verità l'errore era abbastanza banale:
@model IEnumerable<Models.Lavori>

invece di:
@model IEnumerable<Models.LavoriModels>

ciao!!
Quelli banali sono i peggio da trovare... questo non l'avevo proprio visto.
Prova a far compilare le view, c'è uno script in merito, aiuta in questi caso

Non hai veramente capito qualcosa fino a quando non sei in grado di spiegarlo a tua nonna.
-Albert Einstein-

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.