• 1404/09/22

درباره DDD :

سلام وقت بخیر من پروژه رو با استفاده از DDD,Clean دارم پیش میبرم الان یه مشکلی که دارم سر seed data هست 

کد من اینطوریه برای User

(Email , Password) رو تبدیل به Value object کردم 

 

        public Email Email { get; private set; }
       public HashPassword HashPassword { get; private set; }

 

      private User() { }
     private User(string firstname, string lastname, Email email, HashPassword hashpass	   word)
     {
         FirstName = firstname;
         LastName = lastname;
         Email = email;
         HashPassword = hashpassword;
     }
     public static User CreateUser(string fistname, string lastname, Email email, HashPassword hashpassword)
     {
         return new User(fistname, lastname, email, hashpassword);
     }

     

حالا توی لایه 

Shopping.Persistence میخوام seed data بزارم 

    public class UserConfiguration : IEntityTypeConfiguration<User>

   {

       public void Configure(EntityTypeBuilder<User> builder)

       {

           var hashpass = BCrypt.Net.BCrypt.HashPassword("132465");

           var email = new Email("danial@gmail.com");

           var password = new HashPassword(hashpass);

           builder.HasData(User.CreateUser("danial", "teymouri", email, password));

       }

   }

 

این رو اضافه کردم ولی چون برای ثبت اولیه Id نیازه ef نمیتونه migration بزنه الان چطوری بدون اینه Constructor User رو تغییر بدم کاربر رو Seed Data بزنم ؟

سوال بعدی اینکه اصلا UserConfiguration  جاش توی Persistence  هست یا Identity ؟

چون لایه Infrastructure رو تقسیم به سه پروژه کردم 

Persistence  و Identity  و Infrastructure 

logo-enamadlogo-samandehi