Ok - d'abord des excuses - Je suis un développeur frontal (HTML, CSS et JS) essayant de faire des choses avec des données - jamais joli!Entity Framework, MVC 3, relation un-à-plusieurs
J'ai une page, qui peut contenir une ou plusieurs séries. Ces 'Séries' peuvent contenir une ou plusieurs 'Collections' et ces 'Collections' peuvent être associées à plus d'une 'Série'. Les 'Collections peuvent contenir un ou plusieurs' Titres '. Voilà comment j'ai structuré mon db:
CREATE TABLE [dbo].[Pages] (
PageId INT NOT NULL PRIMARY KEY,
[Title] NCHAR(50) NOT NULL
)
CREATE TABLE [dbo].[Series] (
[SeriesId] INT NOT NULL,
[Title] NCHAR (50) NOT NULL,
[PageId] INT NOT NULL,
PRIMARY KEY CLUSTERED ([SeriesId] ASC),
CONSTRAINT [FK_Series_Pages] FOREIGN KEY ([PageId]) REFERENCES [Pages]([PageId])
);
CREATE TABLE [dbo].[Collections] (
[CollectionId] INT NOT NULL,
[Title] NCHAR (50) NOT NULL,
PRIMARY KEY CLUSTERED ([CollectionId] ASC)
);
CREATE TABLE [dbo].[SeriesCollections] (
[SeriesCollectionId] INT NOT NULL,
[SeriesId] INT NOT NULL,
[CollectionId] INT NOT NULL,
PRIMARY KEY CLUSTERED ([SeriesCollectionId] ASC),
CONSTRAINT [FK_SeriesCollections_Series] FOREIGN KEY ([SeriesId]) REFERENCES [Series]([SeriesId]),
CONSTRAINT [FK_SeriesCollections_Collections] FOREIGN KEY ([CollectionId]) REFERENCES [Collections]([CollectionId])
);
CREATE TABLE [dbo].[Titles] (
[TitleId] INT NOT NULL,
[Title] NCHAR (100) NOT NULL,
[SeriesCollectionId] INT NOT NULL,
PRIMARY KEY CLUSTERED ([TitleId] ASC),
CONSTRAINT [FK_Titles_SeriesCollections] FOREIGN KEY ([SeriesCollectionId]) REFERENCES [SeriesCollections]([SeriesCollectionId])
En utilisant Entity Framework, je donne les résultats suivants:
public DbSet<Page> Pages { get; set; }
public DbSet<Series> Series { get; set; }
public DbSet<Collection> Collections { get; set; }
public DbSet<SeriesCollection> SeriesCollections { get; set; }
public DbSet<Title> Titles { get; set; }
l'avis que je veux obtenir ce qui suit.
Pour une 'Page' (id) donnée, je veux que toutes les 'Séries' et dans chacune de ces 'Séries' puissent lister chacun des 'Titres' et leurs 'Collection' associés.
Tout d'abord, mon db est-il correctement configuré? Deuxièmement, je me bats avec l'appel db et viewmodels qui retournerait cela.
Si quelqu'un peut aider ce serait génial
Merci à l'avance
c'est génial et m'a appris beaucoup de choses, ainsi que m'a donné plus de choses à faire et à apprendre! Aimer l'API Fluent. Merci d'avoir pris le temps d'examiner mon problème - c'est très apprécié. – Sniffer