У меня есть таблица FileUpdloaded в моей системе, которая используется в нескольких других таблицах. Так когда-либо загруженный файл в моей системе сохраняется в этой таблице (SqlServer FileStream)Стратегия удаления/обновления с использованием однонаправленного многоадресного соединения с Nhibernate
Таким образом, каждый класс, который нуждается в загруженном файле, у меня есть подобное отображение:
m.ManyToOne(x => x.FileUploaded, map => {
map.Column("File");
map.Class(typeof(FileUploaded));
map.Cascade(Cascade.All | Cascade.DeleteOrphans);
});
Таким образом, потому, что его однонаправленный отношения Я должен удалить файл вручную, не так ли? Я установил новый файл объект и после этого я удалить явную форму старой формы в FileUploaded таблице:
var oldId = myObject.FileUploaded.Id;
myObject.FileUploaded = new FileUploaded(...)
session<FileUploaded>.Delete(oldId)
является то, что правильный способ сделать это? Или я испортил сопоставления?