ManyToMany マッピングに問題があります。これは私が持っているものです:
public class Asset
{
public virtual int id {get;set;}
//other props
public virtual IList<Tag> Tags { get; set; }
}
public class Tag
{
public virtual int Id { get; set; }
public virtual string Description { get; set; }
public virtual string Slug { get; set; }
}
単方向の多対多のマッピング
public class AssetMap : IAutoMappingOverride<Asset>
{
public void Override(AutoMapping<Asset> mapping)
{
mapping.HasManyToMany(x => x.Tags)
.Table("AssetTag")
.ParentKeyColumn("AssetId")
.ChildKeyColumn("TagId")
.Cascade.SaveUpdate();
}
}
私の最初の質問は: マッピングは正しいですか?
この時点で:
var asset = new Asset
{
//props
};
asset.Tags.Add(new Tag{...});
repository.Save(asset)
タグを挿入しますが、真ん中のテーブル「AssetTag」には何も挿入しません
と
var asset = new Asset
{
//props
};
asset.Tags.Add(existing TAG);
repository.Save(asset)
アセットは挿入されますが、中央のテーブル「AssetTag」には挿入されません
助けてくれてありがとう、ダン