次の問題があります: ユーザー クラスにランク フィールドが含まれています。列挙型のように動作するようにランクを定義する方法ですが、データベースではコードを最初に使用します:S (これを言う方法を知りません)。
これは私のユーザークラスです:
public class User
{
[Key]
[Required]
[StringLength(30, MinimumLength = 3)]
public String Name { get; set; }
[EmailAddress]
[MaxLength(254)]
public String Email { get; set; }
[Required]
[DataType(DataType.Password)]
public String Password { get; set; }
public String Salt { get; set; }
//[DataType(DataType.ImageUrl)]
public String Avatar { get; set; }
public bool Banned { get; set; }
public Rank Rank { get; set; }
public String Information { get; set; }
}
そして、これは私の最初の試みです:
public class Rank
{
[Key]
public int RankId { get; set; }
[Required]
[StringLength(50)]
public String Name { get; set; }
}
追加すると機能します:
[ForeignKey("RankId")]
public Rank Rank { get; set; }
public int RankId { get; set; }
しかし、そこで int RnakId を使用するのは無駄であり、フィールド Name で十分であると言われました...ランクに、admin、user、mod のようなランクの文字列を含めたいと思います。そのため、毎回入力する代わりに、後で定義済みのランクのいくつかを選択できます。これを行う他の方法を知っていますか?