使用 Entity Framework 代码优先创建复杂的主键
Create a complex Primary Key using Entity Framework code-first
我需要通过Entity Framework代码优先创建一个复杂的值,其中包括以下三个值。
- A 是常量部分,看起来像 "s#34"
- B 是浮点数,它的值来自 API 网络服务
- C是自然数!
我想C自动生成。在一个示例中,我们有这些 ID:
+-----+------+--+
|A |B |C |
+-----+------+--+
|s#34 |67889 |1 |
|s#34 |68988 |2 |
|s#34 |87665 |3 |
|s#34 |35458 |4 |
|s#34 |..... |5 |
...
我正在寻找这样的代码:
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[ID = "string1" + "string2" + default.ToString()]
public int ID { get; set; }
我的意思是从代码中的 "default" 返回到从 (DatabaseGeneratedOption.Identity) 得到的值。
感谢您的帮助
将三个信息都塞到一个字段中会违反单一职责原则。如果您需要连接三列进行显示,您可能应该创建一个 composite key, and then combine in a computed column。
我需要通过Entity Framework代码优先创建一个复杂的值,其中包括以下三个值。
- A 是常量部分,看起来像 "s#34"
- B 是浮点数,它的值来自 API 网络服务
- C是自然数!
我想C自动生成。在一个示例中,我们有这些 ID:
+-----+------+--+
|A |B |C |
+-----+------+--+
|s#34 |67889 |1 |
|s#34 |68988 |2 |
|s#34 |87665 |3 |
|s#34 |35458 |4 |
|s#34 |..... |5 |
...
我正在寻找这样的代码:
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[ID = "string1" + "string2" + default.ToString()]
public int ID { get; set; }
我的意思是从代码中的 "default" 返回到从 (DatabaseGeneratedOption.Identity) 得到的值。
感谢您的帮助
将三个信息都塞到一个字段中会违反单一职责原则。如果您需要连接三列进行显示,您可能应该创建一个 composite key, and then combine in a computed column。