I am getting this error while I am converting.
Initializing[Entity.Tag#8]-failed to lazily initialize a collection of role: Entity.Tag.Feed, no session or session was closed
Feed feed = new Feed();
Tag tag = Tag.READ.ById(8);
feed.Tag.Add(tag);
feed.Language = ENLanguage.EN;
feed.Name = "Foo";
feed.Save();
string x = JsonConvert.SerializeObject(feed);
Feed Class
public class Feed : BaseClass<Feed>
{
public virtual int FeedId { get; set; }
public virtual IList<Tag> Tag { get; set; }
public virtual ENLanguage Language { get; set; }
public virtual string Name { get; set; }
public Feed()
{
Tag = new List<Tag>();
}
public virtual void AddTag(Tag tag)
{
tag.Feed.Add(this);
Tag.Add(tag);
}
}
Feed Map
public class FeedMap : ClassMap<Feed>
{
public FeedMap()
{
Id(x => x.FeedId);
HasManyToMany(x => x.Tag).Cascade.All().Table("FeedTag");
Map(x => x.Language).CustomType<short>();
Map(x => x.Name);
}
}
Tag Class
public class Tag : BaseClass<Tag>
{
public virtual int TagId { get; set; }
public virtual IList<Feed> Feed { get; protected set; }
public virtual string Name { get; set; }
}
Tag Map
public class TagMap : ClassMap<Tag>
{
public TagMap()
{
Id(x => x.TagId);
Map(x => x.Name);
HasManyToMany(x => x.Feed).Cascade.All().Inverse().Table("FeedTag");
}
}
Save Method
using (var session = NHibernateHelper.OpenSession())
{
using (var transaction = session.BeginTransaction())
{
session.SaveOrUpdate(x);
transaction.Commit();
}
}