Je travaille sur une application Silverlight et j'utilise les services de données RIA et nHibernate.Problème de mise à jour d'une à plusieurs relations lors de l'utilisation de services ria avec nhibernate
Actuellement, j'ai une entité avec une relation un à plusieurs avec une autre entité.
public class Employer {
[Key]
public virtual int Id { get; set; }
public virtual string Name { get; set; }
}
public class Person {
[Key]
public virtual int Id { get; set; }
public virtual string Name { get; set; }
[Include]
[Association("PersonCurrentEmployer", "CurrentEmployerId", "Id", IsForeignKey = true)]
public virtual Employer CurrentEmployer { get; set; }
public virtual int? CurrentEmployerId { get; set; }
}
La propriété CurrentEmployerId
est définie sans insert et aucune mise à jour dans les applications. Du côté de Silverlight, j'ai mis la propriété CurrentEmployer
de la personne à un employeur existant du côté client.
personEntity.CurrentEmployer = megaEmployer;
dataContext.SubmitChanges();
Du côté du serveur, est réglé sur megaEmployer.Id
CurrentEmployerId
de l'entité personne, mais la CurrentEmployer
est null
. Parce que j'utilise la propriété CurrentEmployer
et non le CurrentEmployerId
pour enregistrer la relation, la relation n'est pas modifiée.
Y at-il un moyen de forcer RIA à envoyer l'objet CurrentEmployer
avec le sauver ou dois-je utiliser le CurrentEmployerId
sur le côté serveur pour charger l'employeur et le mettre à la CurrentEmployer
?
Oui, j'ai le même problème ici: http://stackoverflow.com/questions/4921465/wcf-ria-submitchanges-doesnt-send-master-properties-back-to-the-server-side Il semble que NHibernate n'ait toujours pas assez de support, je suppose; nous devrions opérer ForeighKey, pas les entités! http://www.scip.be/index.php?Page=ArticlesNET30&Lang=NL C'est une honte, je pense que Microsoft Team devrait nous écouter =) – EvgeniyK