EF 6のFKとしてenumを使用する
-
23-12-2019 - |
質問
コードファーストアプリの外部キーとしてENUMを使用します。列挙体はintとして保存されているので、enumプロパティの属性[外部キー]を使用できると思いましたが、この例外をスローします。
The types of all properties in the Dependent Role of a referential constraint
must be the same as the corresponding property types in the Principal Role
.
これは私がしようとしていることの例です:
public enum UserType
{
Administrator = 1,
Member = 2
}
public class User
{
public int UserId { get; set; }
public string Login { get; set; }
[ForeignKey("TypeDetails")]
public UserType Type { get; set;}
public virtual MasterType TypeDetails { get; set; }
}
public class MasterType
{
public int MasterTypeId { get; set; }
public string Description { get; set; }
...
}
.
流暢なAPIや移行を通してこれを行うことも可能ですか?
ありがとう
解決
これは私が前にしたものです: https://www.nuget.org/パッケージ/ EF-enum-to-lookup
それはあなたが自動的にルックアップテーブルを作成し、enumが使用されているFKSを追加するあなたのSeed
(Initializerおよび/または移行)で呼び出す方法を提供するNUGETパッケージです。使用情報。
楽しい:-)それがあなたのために働くかどうか私に知らせてください(またはその問題のための誰かがそう!)
所属していません StackOverflow