2016-05-01 149 views
0

他们,所以我需要一个帮助我的数据库模型为我正在工作的mvc项目。MVC数据库模型动态属性

这里的情况是:

我有了列CLIENTNAME,PlanName,PlanPrice,PlanStartDate,PlanEndDate和的isArchived表称为dbo.Clients。

对于字段ClientName和IsArchived只会有一个值可能会更改。但是,每个客户端将具有多个PlanName,PlanPrice,PlanStartDate和PlanEndDate值。

我有一个ClientModel,ClientViewModel,ClientRepository,ClientService和ClientController设置成功将值从视图中的数据库中。

问题:

,我已经做到了这一点的是,我只能用一个值PlanName,PlanPrice,PlanStartDate和PlanEndDate的方式。例如,假设客户已经购买了计划1和计划2,但我无法存储超过1个计划。

我想要做的是制作另一个名为计划的表,但我不太清楚如何在MVC中使用它来为每个客户端存储多个值。

+0

这有什么做MVC。你需要第二个表格(比如说)'计划',其中包含字段'ID'(PK),'ClientID'(FK到客户表),'Name','Price','StartDate'和'EndDate' –

回答

0

您需要两张表。一个将是一个名为Clients的客户端主人,列Id,ClientNameIsArchived

其他表会像ClientPlans与列ClientId, PlanName, PlanPrice, PlanStartDate, PlanEndDate

确保有一个在ClientsId,并在ClientPlansClientId之间的外键关系。

这可以进一步重构为具有一个单独的表为PlansId,PlanName, PlanPrice, PlanStartDate, PlanEndDate)和事务表称为ClientPlans含有ClientIdPlanId与设置适当的关系。

enter image description here