ISession session = Pcms.Classes.Base.NHibernateHelper.SessionFactory.OpenSession(); ITransaction tx = null; IList objList= null; objList.Add("1"); try { tx = session.BeginTransaction(); Pcms.Classes.Data.Group objGroup = new Pcms.Classes.Data.Group(); objGroup.GroupID = 1; objGroup.UserID = objList; session.Save(objGroup); tx.Commit(); } catch (HibernateException eeeee) { if (tx != null) tx.Rollback(); throw eeeee; } finally { session.Close(); // group class using System; using System.Collections; using System.Text; using NHibernate.Mapping.Attributes; using NHibernate; using NHibernate.Cfg; namespace Pcms.Classes.Data { [Class(Table = "[Group]")] public class Group { private int _groupID; private string _name; private IList _userID; [Id(0, Name = "GroupID", Type = "Int32", UnsavedValue = "0")] [Generator(1, Class = "identity")] public virtual int GroupID { get { return _groupID;} set { _groupID = value;} } [Property(Type = "AnsiString", NotNull = true, Length = 50)] public virtual string Name { get { return _name; } set { _name = value; } } [Set(0, Name = "UserID", Table = "UserGroup", Lazy = true, Cascade = CascadeStyle.SaveUpdate)] [Key(1, Column = "UserID")] [ManyToMany(2, Class = "Pcms.Classes.Data.User,Pcms", Column = "GroupID")] public virtual IList UserID { get { return _userID; } set { _userID = value; } } } }