我正在尝试为Order系统设计一些DB模型。基本上,我计划订购不同类型的订单 - 例如,螺丝零件订单,螺栓零件订单等。每种订单类型都有一个需要存储的不同属性。我的问题是在所有类型中维护唯一的订单ID。例如,如果某人订购螺丝,它的订单ID应为1.然后如果有人订购螺栓,它的订单ID应为2.我建议的设计如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OrderSystem.Models
{
public class ScrewOrder
{
[Key]
public int orderID { get; set; }
public int partSerial { get; set; }
public String ScrewType { get; set; }
public float width { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OrderSystem.Models
{
public class BoltOrder
{
[Key]
public int orderID { get; set; }
public int partSerial { get; set; }
public String BoltType { get; set; }
public float length { get; set; }
}
}
问题如下 - 如何保持OrderID对于ScrewOrder和BoltOrder都是唯一的?
拥有一般的“订单”课程会更好吗?如果是这样,在这种情况下如何实施?
请注意,我不熟悉EntityFramework和ORB。