Mysql
 sql >> Base de données >  >> RDS >> Mysql

NHibernate MappingException :pas de persistance pour byte[]

Si j'ai bien lu, vous essayez en fait d'enregistrer le byte[] à la DB, qui ne peut pas fonctionner, car byte[] n'est pas une entité mappée.

Vous voulez probablement écrire :

dl.Contents = new DownloadContent { Data = content };
db.session.SaveOrUpdate(dl); // content is wrong, since content is of type byte[]

De plus, puisque vous n'avez pas spécifié de Inverse() , vous devrez probablement SaveOrUpdate le DownloadContent d'abord, donc :

Download dl = new Download { OutFileName = "Test", DoForward = true };
DownloadContent dlc = new DownloadContent { Data = content };
dl.Contents = dlc;
db.session.SaveOrUpdate(dlc);
db.session.SaveOrUpdate(dl);