Normalement, lorsque vous mettez à jour un objet dans linq2sql, vous obtenez l'objet d'un datacontext et utilisez le même datacontext pour enregistrer l'objet, n'est-ce pas? Quelle est la meilleure façon de mettre à jour un objet qui n'a pas été récupéré par le datacontext que vous utilisez pour effectuer l'opération de sauvegarde, c'est-à-dire que j'utilise flourinefx pour transmettre des données entre flex et asp.net le client à sauver je ne sais pas comment sauver l'objet?Linq2SQL: Objet de mise à jour non créé dans datacontext
public static void Save(Client client)
{
CompanyDataContext db = new CompanyDataContext();
Validate(client);
if(client.Id.Equals(Guid.Empty))
{
//Create (right?):
client.Id = Guid.NewGuid();
db.Clients.InsertOnSubmit(client);
db.SubmitChanges();
}
else
{
//Update:
OffertaDataContext db = new OffertaDataContext();
db.Clients.????
}
}
Mise à jour: différentes approches d'utilisation Joindre le travail de doens't dans ce cas. Donc je suppose qu'une approche basée sur la réflexion est nécessaire.
+1, aussi. le « option bool pour traiter comme modifié 'ne fonctionne que s'il y a un champ TimeStamp ou vous spécifiez de ne pas vérifier les mises à jour dans le DBML.J'utilise une autre solution ici: http://www.singingeels.com/Blogs/Nullable/2009/01/09/How_to_Make_LINQ_to_SQL_Check_for_Changes_After_Attach_or_AttachAll . aspx –