Предполагая, что вы по-прежнему сохраняете целочисленный столбец идентификатора первичного ключа. Вы можете добавить функцию void, которая устанавливает это свойство, и вызвать ее внутри контроллера;
// your model
public class Product{
[Key]
public int productId {get;set;}
public string code {get;set;}
private void setCode() {
this.code= "Ad-" + this.productId.ToString() + "-" + DateTime.Now.ToString("MM-yy");
}
}
// your controller
public class ProductController : Controller(){
public ActionResult CreateProduct(){
Product p = new Product();
product.setCode();
}
}
Или вы можете поместить ее в конструктор класса, чтобы каждый раз, когда вы создаете экземпляр объекта, он создавался автоматически;
// your model
public class Product{
// constructor
public Product(){
this.setCode();
}
[Key]
public int productId {get;set;}
public string code {get;set;}
private void setCode() {
this.code= "Ad-" + this.productId.ToString() + "-" + DateTime.Now.ToString("MM-yy");
}
}