2009-07-22 6 views
2

Exécution de la dernière version de SubSonic (3.0.0.3). Retreiving un seul enregistrement, ce qui rend un changement de terrain et appelant les résultats .Save à une exception de référence null dans le code ci-dessous:Subsonic 3.0.0.3 Crash

Mise à jour public void (fournisseur IDataProvider) {

 if(this._dirtyColumns.Count>0) 
      _repo.Update(this,provider); 
     OnSaved(); 
    } 

Mon code pour créer cette exception est simplement:

   DAL.MY_QUEUE l_l_itmEngageItem = MY__QUEUE.SingleOrDefault(x => x.id == each.id); 
       l_l_itmItem.date_submitted = DateTime.Now; 
       l_l_itmItem.Update(); 

Quelqu'un a-t-il un aperçu? 2.0 ne m'a jamais donné un problème. Toute aide très appréciée.

Répondre

1

Il ne semble même pas que vous récupérez et mettez à jour le même élément. Vous récupérez dans l_l_itmEngageItem, puis mettez à jour un champ sur l_l_itmItem, que vous appelez ensuite Update() sur.

Je suppose que l_l_itemItem n'a pas été initialisé à tout ce qui est actuellement dans la base de données.

Peut-être que le problème est votre nom de la variable;)

2

J'ai vécu exactement le même scénario. J'ai pu insérer, mais pas mettre à jour.

La cause, j'ai trouvé, était qu'une clé primaire n'a pas été placée sur la table. Une fois la clé primaire définie, j'ai pu mettre à jour.

+0

cela a également résolu mon problème. –

Questions connexes