Podczas tworzenia nowego lub aktualizacji istniejących dokumentów w RavenDB dokumentacja mówi to zrobić wzdłuż tych linii:Każda wada wywoływania _documentSession.Store podczas aktualizowania istniejących dokumentów w RavenDB?
public string Save(Blogpost post)
{
Blogpost model;
if (String.IsNullOrEmpty(post.Id))
{
model = new Blogpost();
_documentSession.Store(model);
}
else
{
model = _documentSession.Load<Blogpost>(post.SimpleId);
}
model.Text = template.Text;
model.Name = template.Name;
_documentSession.SaveChanges();
return model.Id;
}
Ktoś w moim zespole robi oszczędza inny sposób dla obu tworzenia nowych dokumentów lub aktualizacji istniejących:
public string Save(Blogpost post)
{
_documentSession.Store(post);
_documentSession.SaveChanges();
return post.Id;
}
Czy jest jakaś wada polegająca na tym, że zawsze dzwonisz pod numer .Store()
, nawet jeśli dokument już istnieje?
Zgadzam się z tym. Ktoś inny wpadł na ten pomysł i wolałbym nie arbitralnie go zbijać, nie rozumiejąc dlaczego. Zaletą jest to, że czyni kod znacznie czystszym w niektórych obszarach. –
synhershko jest jakiś powód, aby to zrobić, że brakuje mi? W moich testach drukarskich nie wydawało mi się nic robić z surowym ruchem ... –
@JohnCulviner zobacz moje komentarze do twojego posta. To okazuje się być dyskusją, która powinna być naprawdę wykonana na liście mailingowej, a nie na SO. – synhershko