Tout en jouant avec un à-un dans activerecord du château, je suis tombé sur le problème suivant:Castle ActiveRecord: un à un
Je suis en train de modéliser un-à-un (utilisateur -userprofile dans ce cas). J'ai déjà appris que ce n'est peut-être pas une bonne pratique, mais ignorons cela un instant (j'essaie toujours de comprendre ce qui se passe).
[ActiveRecord]
public class TestUser : ActiveRecordBase<TestUser>
{
[PrimaryKey(PrimaryKeyType.GuidComb)]
public Guid Id { get; set; }
}
[ActiveRecord]
public class TestUserProfile : ActiveRecordBase<TestUserProfile>
{
[PrimaryKey(PrimaryKeyType.GuidComb)]
public Guid Id { get; set; }
[OneToOne(Cascade = CascadeEnum.All, Fetch = FetchEnum.Join)]
public TestUser User { get; set; }
}
je me attendrais le code suivant pour enregistrer un utilisateur avec le profil, ce qui donne le même identifiant dans la base de données:
[Test]
public void save_profile_saves_user()
{
var profile = new TestUserProfile
{
User = new TestUser()
};
profile.Save();
}
Le résultat réel est cependant que sont enregistrés les deux objets avec une autre touche. Ai-je manqué quelque chose ??