2010-06-09 3 views
0

Voici mon code. Dans le débogueur, je peux voir que le code est en cours d'exécution. Aucune erreur n'est levée. Mais, quand je retourne à la table, aucune rangée n'a été insérée. Qu'est-ce que je rate??Mon Linq à Sql Insérer le code semble bien fonctionner mais je ne reçois pas un enregistrement dans la base de données

protected void submitButton_Click(object sender, EventArgs e) 
{ 
    CfdDataClassesDataContext db = new CfdDataClassesDataContext(); 

    string sOfficeSought = officesSoughtDropDownList.SelectedValue; 
    int iOfficeSought; 
    Int32.TryParse(sOfficeSought, out iOfficeSought); 

    Account act = new Account() 
    { 
     FirstName = firstNameTextBox.Text, 
     MiddleName = middleNamelTextBox.Text, 
     LastName = lastNameTextBox.Text, 
     Suffix = suffixTextBox.Text, 
     CampaignName = campaignNameTextBox.Text, 
     Address1 = address1TextBox.Text, 
     Address2 = address2TextBox.Text, 
     TownCity = townCityTextBox.Text, 
     State = stateTextBox.Text, 
     ZipCode = zipTextBox.Text, 
     Phone = phoneTextBox.Text, 
     Fax = faxTextBox.Text, 
     PartyAffiliation = partyAfilliatinoTextBox.Text, 
     EmailAddress = emailTextBox.Text, 
     BankName = bankNameTextBox.Text, 
     BankMailingAddress = bankAddressTextBox.Text, 
     BankTownCity = bankTownCityTextBox.Text, 
     BankState = bankStateTextBox.Text, 
     BankZip = bankZipTextBox.Text, 
     TreasurerFirstName = treasurerFirstNameTextBox.Text, 
     TreasurerMiddleName = treasurerMiddleNamelTextBox.Text, 
     TreasurerLastName = treasurerLastNameTextBox.Text, 
     TreasurerMailingAddress = treasurerMailingAddressTextBox.Text, 
     TreasurerTownCity = treasurerTownCityTextBox.Text, 
     TreasurerState = treasurerStateTextBox.Text, 
     TreasurerZipCode = treasurerZipTextBox.Text, 
     TreasurerPhone = treasurerPhoneTextBox.Text 
     //OfficeSought = iOfficeSought 
    }; 
    act.Suffix = suffixTextBox.Text; 

    db.SubmitChanges(); 
} 

Répondre

5

Avant d'appeler db.SubmitChanges() vous devez également avoir une ligne comme (selon ce que le nom de la table est):

db.Accounts.InsertOnSubmit(act); 
0

Vous n'êtes jamais ajoutez l'objet nouvellement créé dans le contexte de données.

En général, vous appelez quelque chose comme:

Db.AddtoAccounts(act); 

Cette syntaxe est pour EF, mais le concept est le même.

Vous avez affecté un nouvel objet, mais vous n'avez jamais indiqué au contexte de base de données que vous souhaitez l'utiliser.

Puis appelez soumettre les modifications.

Questions connexes