diff --git a/Sources/Data/EF/Dice/ColorDieEntity.cs b/Sources/Data/EF/Dice/ColorDieEntity.cs index 877914a..a062808 100644 --- a/Sources/Data/EF/Dice/ColorDieEntity.cs +++ b/Sources/Data/EF/Dice/ColorDieEntity.cs @@ -1,16 +1,9 @@ using Data.EF.Dice.Faces; -using Model.Dice.Faces; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace Data.EF.Dice { - public class ColorDieEntity + public class ColorDieEntity : DieEntity { - public Guid Id { get; set; } - public ICollection Faces { get; set; } + public new ICollection Faces { get; set; } } } diff --git a/Sources/Data/EF/Dice/DieEntity.cs b/Sources/Data/EF/Dice/DieEntity.cs new file mode 100644 index 0000000..31a4167 --- /dev/null +++ b/Sources/Data/EF/Dice/DieEntity.cs @@ -0,0 +1,19 @@ +using Data.EF.Dice.Faces; +using Data.EF.Games; +using Data.EF.Joins; +using System.ComponentModel.DataAnnotations.Schema; + +namespace Data.EF.Dice +{ + /// + /// not designed to be instantiated, but not abstract in order to allow extensions + /// + /// + public class DieEntity + { + public Guid ID { get; set; } + public ICollection Turns { get; set; } // many to many + public List DieTurns { get; set; } + public ICollection Faces { get; set; } // one to many + } +} diff --git a/Sources/Data/EF/Dice/Faces/ColorFaceEntity.cs b/Sources/Data/EF/Dice/Faces/ColorFaceEntity.cs index 550ae64..d28e6d0 100644 --- a/Sources/Data/EF/Dice/Faces/ColorFaceEntity.cs +++ b/Sources/Data/EF/Dice/Faces/ColorFaceEntity.cs @@ -1,20 +1,15 @@ -using Model.Dice; -using System; -using System.ComponentModel.DataAnnotations.Schema; -using System.Drawing; +using System.Drawing; namespace Data.EF.Dice.Faces { - public class ColorFaceEntity + public class ColorFaceEntity : FaceEntity { - public Guid ID { get; set; } - public byte A { get; set; } public byte R { get; set; } public byte G { get; set; } public byte B { get; set; } - [ForeignKey("ColorDieFK")] + public Guid ColorDieEntityID { get; set; } public ColorDieEntity ColorDieEntity { get; set; } public void SetValue(Color c) diff --git a/Sources/Data/EF/Dice/Faces/FaceEntity.cs b/Sources/Data/EF/Dice/Faces/FaceEntity.cs new file mode 100644 index 0000000..312e0c2 --- /dev/null +++ b/Sources/Data/EF/Dice/Faces/FaceEntity.cs @@ -0,0 +1,15 @@ +using Data.EF.Games; +using Data.EF.Joins; + +namespace Data.EF.Dice.Faces +{ + /// + /// not designed to be instantiated, but not abstract in order to allow extensions + /// + public class FaceEntity + { + public Guid ID { get; set; } + public ICollection Turns { get; set; } // many to many + public List FaceTurns { get; set; } + } +} diff --git a/Sources/Data/EF/Dice/Faces/ImageFaceEntity.cs b/Sources/Data/EF/Dice/Faces/ImageFaceEntity.cs index 3d29656..7227868 100644 --- a/Sources/Data/EF/Dice/Faces/ImageFaceEntity.cs +++ b/Sources/Data/EF/Dice/Faces/ImageFaceEntity.cs @@ -1,19 +1,9 @@ -using Model.Dice; -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Data.EF.Dice.Faces +namespace Data.EF.Dice.Faces { - public class ImageFaceEntity + public class ImageFaceEntity : FaceEntity { - public Guid ID { get; set; } public string Value { get; set; } - - [ForeignKey("ImgDieFK")] + public Guid ImageDieEntityID { get; set; } public ImageDieEntity ImageDieEntity { get; set; } } } diff --git a/Sources/Data/EF/Dice/Faces/NumberFaceEntity.cs b/Sources/Data/EF/Dice/Faces/NumberFaceEntity.cs index 2895633..862f333 100644 --- a/Sources/Data/EF/Dice/Faces/NumberFaceEntity.cs +++ b/Sources/Data/EF/Dice/Faces/NumberFaceEntity.cs @@ -1,19 +1,9 @@ -using Model.Dice; -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Data.EF.Dice.Faces +namespace Data.EF.Dice.Faces { - public class NumberFaceEntity + public class NumberFaceEntity : FaceEntity { - public Guid Id { get; set; } public int Value { get; set; } - - [ForeignKey("NumDieFK")] + public Guid NumberDieEntityID { get; set; } public NumberDieEntity NumberDieEntity { get; set; } } } diff --git a/Sources/Data/EF/Dice/ImageDieEntity.cs b/Sources/Data/EF/Dice/ImageDieEntity.cs index 2b379ef..f1295ab 100644 --- a/Sources/Data/EF/Dice/ImageDieEntity.cs +++ b/Sources/Data/EF/Dice/ImageDieEntity.cs @@ -1,16 +1,9 @@ using Data.EF.Dice.Faces; -using Model.Dice.Faces; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace Data.EF.Dice { - public class ImageDieEntity + public class ImageDieEntity : DieEntity { - public Guid Id { get; set; } - public ICollection Faces { get; set; } + public new ICollection Faces { get; set; } } } diff --git a/Sources/Data/EF/Dice/NumberDieEntity.cs b/Sources/Data/EF/Dice/NumberDieEntity.cs index 27b1d21..c3908fe 100644 --- a/Sources/Data/EF/Dice/NumberDieEntity.cs +++ b/Sources/Data/EF/Dice/NumberDieEntity.cs @@ -1,16 +1,9 @@ using Data.EF.Dice.Faces; -using Model.Dice.Faces; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace Data.EF.Dice { - public class NumberDieEntity + public class NumberDieEntity : DieEntity { - public Guid Id { get; set; } - public ICollection Faces { get; set; } + public new ICollection Faces { get; set; } } }