71 messaggi dal 12 settembre 2010
Ciao a tutti,
sto avendo un problema nell'utilizzo di EF Core in un applicazione che sto realizzando con ASP.NET Core 2 e DB MySql.

Sono riuscito tranquillamente a scrivere le mie entità e a mapparle con le rispettive tabelle nel DB usando gli appositi comandi di "migration" da CLI.

Il problema adesso nasce nel momento in cui devo gestire le classiche operazioni CRUD...non riesco a capire come devo gestire il salvataggio dei dati nel caso di un nuovo oggetto da salvare o da modificare.

Parto dalle seguenti classi che sono così strutturate:

public class Tabelle
{
   public int Id { get; set; }
   public List<Localizzazioni> Nome { get; set; }
   public string Descrizione { get; set; }
   public string Mnemonico { get; set; }
}
public class Localizzazioni
{
   public int Id { get; set; }
   public int IdContenuto { get; set; }
   public int IdLingua { get; set; }
   public string Testo { get; set; }
}


Dove il campo "Nome" della classe "Tabelle" nella mia applicazione dovrebbe essere un campo testuale localizzato in N lingue all'interno della tabella "Localizzazioni".

Quindi nel momento in cui faccio il mapping delle mie entità ho scritto la relazione in questo modo:

modelBuilder.Entity<Tabelle>()
            .HasMany(p => p.Nome)
            .WithOne()
            .HasForeignKey(b => b.IdContenuto)
            .OnDelete(DeleteBehavior.Cascade);


Partendo da questo punto (considerando la relazione in alto) come dovrei scrivere la View della mia form?
Come dovrei scrivere la action del mio controller per fare il salvataggio dei dati?
Dato che vorrei salvare tutti i testi localizzati all'interno della tabella "Localizzazioni" posso definire la relazioni di classi differenti verso la stessa classe "Localizzazioni" considerando il campo "IdContenuto"?
Mi basterebbe anche ricevere il link ad un articolo, tutorial od altro che mi indichi in modo dettagliato come gestire le classiche operazioni CRUD in presenza di dati relazionati.

Vi ringrazio in anticipo.

Saluti,
Alessio.
29 messaggi dal 03 aprile 2014
io ti posso dare la mia esperienza.
Premesso, provengo da anni di php , laravel etc. da 5 mesi sono su asp.net core


ho abbandonato momentaneamente Efcore e scrivo le query con Linq.
per le View quando faccio una join ad esempio, creo su models un'altra classe inserendo entrambi i valori delle due tabella e poi alla View passo il nuovo oggetto

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.