जब मैं अपना आवेदन शुरू करता हूं तो मेरा डेटाबेस नहीं बनाया जाता है। हम चार लोग एक ही प्रोजेक्ट पर काम कर रहे हैं और यह केवल मेरे लिए है कि स्टार्टअप पर डेटाबेस नहीं बनाया गया है। यह पहले काम कर रहा था, मुझे नहीं पता कि मैंने क्या बदला। मैंने प्रोजेक्ट को कई बार डिलीट किया है और इसे हमारे जीथब से क्लोन किया है। मैंने अपने कंप्यूटर और विजुअल स्टूडियो को भी कई बार पुनरारंभ किया है, लेकिन कुछ भी काम नहीं कर रहा है। हमने समस्या को गुगल किया है लेकिन हम इसे हल नहीं कर सकते हैं। सराहना करेंगे अगर कोई मेरी मदद कर सकता है। क्या यह संभव है कि मैंने गलती से कुछ विकल्पों को बदल दिया है क्योंकि यह केवल मेरे लिए है डेटाबेस नहीं बनाया गया है?

यहाँ मेरी पहचान हैDbContext

public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
    public ApplicationDbContext()
        : base("TurreKlippDb", throwIfV1Schema: false)
    {
    }

    public static ApplicationDbContext Create()
    {
        return new ApplicationDbContext();

    }


    public DbSet<Categories> Categories { get; set; }
    public DbSet<Saloon> Saloon { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
    }

}

मेरा डेटा प्रारंभकर्ता

public class DataInitializer :
DropCreateDatabaseIfModelChanges<ApplicationDbContext>
{

    protected override void Seed(ApplicationDbContext context)
    {
        var roleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(context));
        var UserManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(context));



        // In Startup iam creating first Admin Role and creating a default Admin User    
        if (!roleManager.RoleExists("Admin"))
        {

            // first we create Admin rool   
            var role = new IdentityRole();
            role.Name = "Admin";
            roleManager.Create(role);
        }

        if (!roleManager.RoleExists("HairSaloon"))
        {

            // create HairSaloon rool   
            var role = new IdentityRole();
            role.Name = "HairSaloon";
            roleManager.Create(role);
        }


        if (!context.Users.Any(x => x.UserName == "admin@live.se"))
        {
            PasswordHasher pwdHash = new PasswordHasher();
            string pwd = pwdHash.HashPassword("123");
            var saloon = new ApplicationUser();


            saloon.PasswordHash = pwd;
            saloon.UserName = "admin@live.se";
            saloon.Email = "admin@live.se";
            saloon.CompanyName = "AdminSaloon";

            saloon.SecurityStamp = Guid.NewGuid().ToString();
            context.Users.Add(saloon);
            context.SaveChanges();

            UserManager.AddToRole(saloon.Id, "Admin");
            context.SaveChanges();
        }




        var l = new List<ApplicationUser>();

        var lista = new List<String>();

        lista.Add("Herrklippning");
        lista.Add("Damklippning");
        lista.Add("Barnklippning");
        lista.Add("Ansiktsbehandlingar");
        lista.Add("Fransbehandlingar");
        lista.Add("Brynbehandlingar");
        lista.Add("Hudbehandlingar");
        lista.Add("Injektionsbehandlingar");
        lista.Add("Makeup");
        lista.Add("Hårborttaggning");
        lista.Add("Vaxningar");
        lista.Add("Naglar");


        foreach (var item in lista)
        {
            context.Categories.Add(
                new Categories
                {
                    CategoryName = item,
                    Saloons = l
                });
            context.SaveChanges();
        }
    }
}

और मेरा Global.asax

    public class MvcApplication : System.Web.HttpApplication
{
    protected void Application_Start()
    {
        Database.SetInitializer(new DataInitializer());
        AreaRegistration.RegisterAllAreas();
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
    }
}

मेरा कनेक्शन स्ट्रिंग

<connectionStrings>
    <add name="TurreKlippDb" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\TurreKlippDb.mdf;Initial Catalog=TurreKlippDb;Integrated Security=True" providerName="System.Data.SqlClient" />
  </connectionStrings>
0
Xnitor 17 मई 2018, 15:19

1 उत्तर

सबसे बढ़िया उत्तर

आपका कोड ठीक प्रतीत होता है (मुझे आशा है कि आपको कोई संकलन या रन टाइम त्रुटि नहीं मिली)। डेटाबेस केवल तभी बनाया जाएगा जब आप अपने डेटाबेस से ऑब्जेक्ट तक पहुंचने का प्रयास करेंगे। हो सकता है कि आपने अपने डेटाबेस से किसी ऑब्जेक्ट तक पहुंचने का प्रयास नहीं किया हो (उदाहरण: इंडेक्स पेज या कुछ पर डेटा दिखाना)। यदि आप पहले से ही अपने डेटा तक पहुँचने की कोशिश कर चुके हैं और डेटाबेस नहीं बना है तो आपको त्रुटि मिलेगी। अगर ऐसा है तो हमें वह त्रुटि दिखाएं।

1
Rajput 17 मई 2018, 15:58