2015-09-25 3 views
5

मैं एएसपीनेट में सी # का उपयोग कर उपयोगकर्ता को पंजीकृत करने की कोशिश कर रहा हूं और फिर अपना विवरण अपने डेटाबेस में डाल सकता हूं। सबकुछ ठीक काम करता प्रतीत होता है लेकिन विवरण डेटाबेस में नहीं जाते हैं।पंजीकरण के बाद डेटाबेस में उपयोगकर्ता विवरण दर्ज करें

protected void CreateUser_Click(object sender, EventArgs e) 
{ 
    var manager = Context.GetOwinContext().GetUserManager<ApplicationUserManager>(); 
    var signInManager = Context.GetOwinContext().Get<ApplicationSignInManager>(); 
    var user = new ApplicationUser() { UserName = Email.Text, Email = Email.Text }; 
    IdentityResult result = manager.Create(user, Password.Text); 

    if (result.Succeeded) 
    { 
     signInManager.SignIn(user, isPersistent: false, rememberBrowser: false); 
     IdentityHelper.RedirectToReturnUrl(Request.QueryString["ReturnUrl"], Response); 
     manager.AddToRole(user.Id, "users"); 

     string connectionString = WebConfigurationManager.ConnectionStrings["MyDatabaseConnection"].ConnectionString; 
     SqlConnection con = new SqlConnection(connectionString); 
     string sql; 
     sql = "INSERT INTO users (username, title, gname, sname, dob, address, suburb, state, postcode, phone, email) VALUES (@UserName, @Title1, @FirstName, @FamilyName, @DateOfBirth, @Address, @Suburb, @State, @Postcode, @Phone, @Email)"; 
     SqlCommand cmd = new SqlCommand(sql, con); 
     cmd.Parameters.AddWithValue("@Username", Email.Text.Trim()); 
     cmd.Parameters.AddWithValue("@Title1", Title1.Text.Trim()); 
     cmd.Parameters.AddWithValue("@FirstName", FirstName.Text.Trim()); 
     cmd.Parameters.AddWithValue("@FamilyName", FamilyName.Text.Trim()); 
     cmd.Parameters.AddWithValue("@DateOfBirth", DateOfBirth.Text.Trim()); 
     cmd.Parameters.AddWithValue("@Address", Address.Text.Trim()); 
     cmd.Parameters.AddWithValue("@Suburb", Suburb.Text.Trim()); 
     cmd.Parameters.AddWithValue("@State", State.Text.Trim()); 
     cmd.Parameters.AddWithValue("@Postcode", Postcode.Text.Trim()); 
     cmd.Parameters.AddWithValue("@Phone", Phone.Text.Trim()); 
     cmd.Parameters.AddWithValue("@Email", Email.Text.Trim()); 
     using (con) 
     { 
      con.Open(); 
      int rowCount = cmd.ExecuteNonQuery(); 
      if (rowCount > 0) 
      { 
       lblResult.Text = "Success. New User Registered"; 
      } 
     } 
    } 
    else 
    { 
     ErrorMessage.Text = result.Errors.FirstOrDefault(); 
    } 
} 

और web.config पेज मैं कनेक्शन स्ट्रिंग है पर:

<connectionStrings> 
<add name="MyDatabaseConnection" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\MyDatabaseConnection.mdf;Integrated Security=True" 
    providerName="System.Data.SqlClient" /> 
    </connectionStrings> 

किसी भी विचार क्या मैं गलत कर रहा हूँ यहाँ मैं अब तक राशि है? किसी भी सहायता की सराहना की जाएगी।

+0

क्या आपको कोई अपवाद मिल रहा है? –

+0

नहीं, ऐसा लगता है कि यह सामान्य रूप से काम करता है, लेकिन तब विवरण डेटाबेस में दिखाई नहीं देते – smurph

+0

क्या आपने कोड डीबग किया है? यदि कोई शर्त पूरी नहीं हुई है तो क्या आपको दायरे से बाहर निकाल दिया गया है? – Prabhat

उत्तर

0

कनेक्शन स्ट्रिंग एक सूची को निर्दिष्ट नहीं किया गया है - डेटाबेस यानी

उदाहरण के लिए

उपयोग करने के लिए, अपने परीक्षण डेटाबेस पढ़ता है:

<connectionStrings> 
     <add  name="WindowsFormsApplication3.Properties.Settings.mbcConnectionString" 
     connectionString="Data Source=(local);Initial Catalog=myDB;Integrated Security=True" 
     providerName="System.Data.SqlClient" /> 
</connectionStrings> 

डेटा स्रोत सर्वर स्थान है, सूची के भीतर डेटाबेस है वह सर्वर

संबंधित मुद्दे