0
我需要通过掩码生成一个主键(例如:BS{100-999}-{Rand(100-999)}
)但我不知道如何在EF代码中生成这样的密钥/有人可以帮我解决这个问题出来吗?实体框架如何通过掩码生成PrimaryKey
我的模型:
[Table("Tickets")]
public class Ticket
{
public Ticket()
{
CreationDate = DateTime.UtcNow;
LastChangeDate = DateTime.UtcNow;
UserReviewed = true;
EmailAlert = true;
}
[Key]
[DatabaseGenerated(System.ComponentModel.DataAnnotations.Schema.DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; } //now it is Guid But i need this to be string and generated by the above mask
public string UsersName { get; set; }
public string Theme { get; set; }
public string Request { get; set; }
public DateTime CreationDate { get; set; }
public string TypeMask { get; set; }
public string StatusMask { get; set; }
public int SenderId { get; set; }
public bool EmailAlert { get; set; }
public DateTime LastChangeDate { get; set; }
public bool UserReviewed { get; set; }
public virtual ICollection<TicketRecord> Answers { get; set; }
[ForeignKey("StatusMask")]
public virtual TicketStatus Status { get; set; }
[ForeignKey("TypeMask")]
public virtual TicketType Type { get; set; }
[ForeignKey("SenderId")]
public virtual UserProfile Sender { get; set; }
public virtual AttachmentsCollection IncludedFiles { get; set; }
}
你问如何映射密钥?或者你如何制作序列? – Jorge 2013-03-19 02:31:37
@Jorge我问如何使EF生成一个新的唯一键,当我使用我的模式添加一条记录 – CodeDemen 2013-03-19 02:37:57
您需要定义您的映射的关键,唯一的'EF'它将为您做它它生成的约束在数据库中,和'sql'需要插入的值,但没有别的 – Jorge 2013-03-19 02:43:04