在Fluent NHibernate中重新排序Images数组?

时间:2016-06-16 07:00:15

标签: c# nhibernate fluent-nhibernate

可能是一个简单的问题,但我自己也无法理解。任何帮助将不胜感激。

我正在尝试使用Fluent NHibernate保存已重新排序的Images数组。

public class Product
{

    private readonly IList<Image> _images = new List<Image>();
    public virtual IEnumerable<Image> Images => _images;

    public virtual void ReorderImages(Image[] images)
    {
        _images.Clear();
        foreach (var image in images)
        {
            _images.Add(image);               
        }            
    }

}


public class Image
{
    public Image()
    {

    }
    public Image(Uri url, string description, bool isdefault, string source)
    {

        ImageUrl = url.ToString();
        Description = description;
        IsDefault = isdefault;
        Source = source;
    }

    public virtual string ImageUrl { get; protected set; }       
    public virtual string Description { get; protected set; }       
    public virtual string Source { get; protected set; }
    public virtual bool IsDefault { get; protected set; }
    public virtual int ImageId => int.Parse(ImageUrl.Substring(ImageUrl.LastIndexOf('/') + 1));
}
  

当我使用上述方法时,它会向我抛出错误类型 NHibernate.NonUniqueObjectException ,并带有异常消息,“具有相同标识符值的其他对象已与会话相关联:https://localhost/project/assets/image/1/198

如何解决这个问题,以便我可以重新排序图像。

感谢您的时间。

0 个答案:

没有答案