我使用ASP.NET MVC与Entity Framework Code First和SQL Server 2014数据库。
我想创建一个'客户'具有自动增量主键的表,其格式如下:CLI-X其中X是自动增量号。
以下是我的尝试:
public class Customer
{
public int CustomerId { get; set; }
public string CustomerNumber
{
get
{
return "CLI-" + CustomerId;
}
set { }
}
public string Name { get; set; }
}
public class CustomerMapping : EntityTypeConfiguration<Customer>
{
public CustomerMapping()
{
// Auto incrément ID
HasKey(x => x.CustomerId);
Property(x => x.CustomerId).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
// Set CLI-ID as PK
Property(x => x.CustomerNumber).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Computed);
}
}
不幸的是,专栏&#39; CustomerNumber&#39;当我创建新客户时,in在数据库中为空。我希望自动格式化此列,而不是每次创建新客户时自己创建。
所以我的问题是:我怎样才能在EF代码中首先使用带有字符串前缀的自动增量主键?