另一个'实体类型'x'没有键定义'问题,但我已经在[Key]属性上设置了属性,所以我有点困惑.
这是我的实体和上下文类:
namespace DoctorDB.Models
{
public class Doctor
{
[Key]
public string GMCNumber;
[Required]
public string givenName;
[Required]
public string familyName;
public string MDUNumber;
public DateTime MDUExpiry;
public string MDUCover;
}
public class DoctorContext : DbContext
{
public DbSet<Doctor> Doctors { get; set; }
}
}
Run Code Online (Sandbox Code Playgroud)
当我去创建我的控制器时,我选择使用实体框架方法使用此实体和上下文创建它:

我收到此错误:

我唯一想到的是你是否无法在字符串属性上成功使用[Key].如果你不能那么公平,我会解决它,但如果有人能够确认这种或那种方式,我将不胜感激.
这是我的代码,虽然我已经改进了关键属性,但仍然存在问题.
public class Contacts
{
[Key]
public int ContactId { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string State { get; set; }
public string Zip { get; set; }
[DataType(DataType.EmailAddress)]
public string Email { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
实体类型"联系人"没有定义键.定义此实体类型的键.
实体类型:EntitySet"联系人"基于未定义键的"联系人"类型