Ho un problema quando si cerca di costruire una vista utilizzando impalcature tramite la funzione "Aggiungi vista" all'interno di un controller con MVC5 con Entity Framework 6.1.3.MVC5 e EF6.1.3 Ponteggi problemi
Tuttavia, utilizzando Entity Framework 5.0.0 tutto funziona perfettamente ~ I può costruire una vista con successo.
Utilizzando Entity Framework 6.1.3
Quando seleziono la funzione "Aggiungi vista" Ottengo il seguente errore
"C'è stato un errore in esecuzione il generatore di codice selezionato. ' Impossibile recuperare i metadati per 'xxx'. Impossibile trovare il tipo CLR per 'xxx'.
Il mio ambiente è VS2013 Ultimate (Update4), framework di destinazione 4.5.1, C#, MVC5, EF6.1.3 Database First ObjectContext, SQL Server 2008.
Le mie app DAL e MVC si trovano in progetti diversi.
Ho verificato che entrambi utilizzano la stessa versione di EF6.1.3 disinstallando e reinstallando tramite entrambi i prompt della riga di comando della console di Gestione pacchetti e Nuget e che tutti gli altri riferimenti sono corretti.
La mia classe Modello
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using SysviewData;
namespace SysviewWebEF613.Models
{
public class DisplaySysoutModel
{
SysviewEntities context = new SysviewEntities();
public IEnumerable<vw_soServerInfo> GetSysouts()
{
return context.vw_soServerInfo.ToList();
}
}
}
mio controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using SysviewWebEF613.Models;
namespace SysviewWebEF613.Controllers
{
public class DisplaySysoutsController : Controller
{
// GET: DisplaySysouts
DisplaySysoutModel model = new DisplaySysoutModel();
public ActionResult Index()
{
return View(model.GetSysouts());
}
}
}
Per quanto riguarda EF6.1.3
1) Sto usando database di EF prima modellazione. Per ragioni storiche sto usando ObjectContext.
2) Ho provato a utilizzare entrambe le strategie di generazione del codice ~ "Legacy ObjectContext" e "T4" ~ (clean/ricostruisci ecc.) Nessuna funzione ~ Ricevo lo stesso messaggio di errore.
"C'è stato un errore in esecuzione il generatore di codice selezionato. 'Impossibile recuperare i metadati per 'xxx'. Impossibile trovare il tipo CLR per 'xxx'.
Tuttavia , se uso EF5.0.0 ~ sono in grado di costruire la mia vista con successo.
Informazione & per questo che non voglio usare EF5.0.0
1) Sto sviluppando un nuovo progetto di front-end Web utilizzando MVC5 che sostituirà l'app Web esistente in una soluzione che contiene altri 23 progetti ~ Attualmente si utilizza EF6.1.3 e si sta utilizzando EF6. xx per circa 2 anni.
Quindi, puoi capire la mia riluttanza a voler tornare a utilizzare EF5.0.0?
2) Quindi, per il motivo sopra riportato ~ questo è il motivo per cui sto cercando di utilizzare EF6.1.3 e non EF5.0.0.
E 'semplice come EF6.xxx non supporta MVC5 ponteggi quando si utilizza EF ObjectContext?
Ho lottato con questo per giorni ormai ~ Ho studiato questo problema ampiamente e anche se ho visto simili problemi ponteggi segnalato un paio di anni fa (MVC4 & EF6xx in compatibilità) ~ ho capito (forse a torto) che MVC5 ed EF6.1.3 hanno risolto questi problemi e non ho visto nessun altro avere problemi a costruire una vista ~ Effettivamente ~ se uso lo stesso codice ~ ma uso EF5.0.0 ~ tutto funziona.
Ho ricontrollato le mie stringhe di connessione nel mio app.config (DAL) e Web.config (progetto MVC) ~ tutto sembra corretto.
Avete qualche idea o avete provato qualcosa di simile e cosa avete fatto per risolvere questo problema?