1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-19 13:12:54 +08:00

Fix cascading inserts.

This commit is contained in:
Dean Herbert 2016-10-21 17:01:12 +09:00 committed by Drew DeVault
parent 42f8d19c73
commit ee6c810df5
2 changed files with 22 additions and 11 deletions

View File

@ -11,17 +11,23 @@ namespace osu.Game.Database
{ {
[PrimaryKey] [PrimaryKey]
public int BeatmapID { get; set; } public int BeatmapID { get; set; }
[ForeignKey(typeof(BeatmapSetInfo))] [ForeignKey(typeof(BeatmapSetInfo))]
public int BeatmapSetID { get; set; } public int BeatmapSetID { get; set; }
[ManyToOne] [ManyToOne]
public BeatmapSetInfo BeatmapSet { get; set; } public BeatmapSetInfo BeatmapSet { get; set; }
[ForeignKey(typeof(BeatmapMetadata))] [ForeignKey(typeof(BeatmapMetadata))]
public int BeatmapMetadataID { get; set; } public int BeatmapMetadataID { get; set; }
[OneToOne(CascadeOperations = CascadeOperation.All)]
public BeatmapMetadata Metadata { get; set; }
[ForeignKey(typeof(BaseDifficulty)), NotNull] [ForeignKey(typeof(BaseDifficulty)), NotNull]
public int BaseDifficultyID { get; set; } public int BaseDifficultyID { get; set; }
[OneToOne]
public BeatmapMetadata Metadata { get; set; } [OneToOne(CascadeOperations = CascadeOperation.All)]
[OneToOne]
public BaseDifficulty BaseDifficulty { get; set; } public BaseDifficulty BaseDifficulty { get; set; }
public string Path { get; set; } public string Path { get; set; }

View File

@ -9,13 +9,18 @@ namespace osu.Game.Database
{ {
[PrimaryKey] [PrimaryKey]
public int BeatmapSetID { get; set; } public int BeatmapSetID { get; set; }
[OneToOne]
[OneToOne(CascadeOperations = CascadeOperation.All)]
public BeatmapMetadata Metadata { get; set; } public BeatmapMetadata Metadata { get; set; }
[NotNull, ForeignKey(typeof(BeatmapMetadata))] [NotNull, ForeignKey(typeof(BeatmapMetadata))]
public int BeatmapMetadataID { get; set; } public int BeatmapMetadataID { get; set; }
[OneToMany]
[OneToMany(CascadeOperations = CascadeOperation.All)]
public List<BeatmapInfo> Beatmaps { get; set; } public List<BeatmapInfo> Beatmaps { get; set; }
public string Hash { get; set; } public string Hash { get; set; }
public string Path { get; set; } public string Path { get; set; }
} }
} }