首页 > 解决方案 > 如何在实体框架代码中按分支和年份生成自定义序列号

问题描述

如何在实体框架代码中首先按分支和年份生成自定义序列号(自动增量)如果我添加新记录并更改分支或年份,它会自动生成一个新序列号

我需要给这个模型添加属性

public class Stock
    {
        public Guid ID { set; get; }
        public Int64 SerialNo { set; get; }
        public int Year { set; get; }
        public string Baranch { set; get; }

        public string Item { set; get; }
        public decimal Price { set; get; }
    }

像这样输出

|                 _ID_               |_SerialNo_|_Year_|_Branch_|_Item_|_Price_|
|97A7A400-B6AB-4AB2-AF0C-0280641223A1|    1     | 2018 |Main    |Corola|250$   |
|1ED15B3E-2B7D-400B-8098-EEDD50C121E3|    2     | 2018 |Main    |Camry |750$   |
|4A06A5AF-8BF7-4F43-9E1C-11B94BC56060|    3     | 2018 |Main    |Atoz  |100$   |
|3437E251-36B9-4967-B2C3-9DAFAD2B997A|    1     | 2017 |Main    |C7    |300$   |
|2F501488-89C7-4609-8BFF-5580A7A5A8CB|    2     | 2017 |Main    |Corola|720$   |
|09C9FF51-3ABC-436D-B3CF-67B71F7AAFD6|    3     | 2017 |Main    |GMC   |500$   |
|DA566E19-258D-4FB5-8B8F-9FCF102F98FC|    1     | 2015 |Bar2    |Other |450$   |
|727410AA-B420-427D-9ED5-7927DD269DFC|    2     | 2015 |Bar2    |C7    |300$   |
|228F599F-89D4-45C3-B6FE-8E236D07485D|    3     | 2015 |Bar2    |Corola|720$   |
|46ECFA2E-5252-4E4C-8A3B-7F067B37208E|    4     | 2015 |Bar2    |GMC   |500$   |
|79037BCE-4D18-458B-BF54-18BC2115697E|    1     | 2018 |Bar2    |Other |450$   |
|D75A18AF-48B4-404F-9D0F-997A14C4DE0E|    2     | 2018 |Bar2    |Other |450$   |

标签: c#asp.net-mvcentity-framework

解决方案


您可以在构造函数中创建一个新的 Guid,如下所示:

public class Stock {
...
    public Stock() {
        this.ID = Guid.NewGuid();
    }
...
}

推荐阅读