Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Fluent nHibernate和mapping IDictionary<;每周一天,IDictionay<;整数,十进制>&燃气轮机;如何?_Nhibernate_Mapping_Fluent_Idictionary - Fatal编程技术网

Fluent nHibernate和mapping IDictionary<;每周一天,IDictionay<;整数,十进制>&燃气轮机;如何?

Fluent nHibernate和mapping IDictionary<;每周一天,IDictionay<;整数,十进制>&燃气轮机;如何?,nhibernate,mapping,fluent,idictionary,Nhibernate,Mapping,Fluent,Idictionary,我在使用类型Dictionary的propert和类型Dictionary的value对类进行映射时遇到问题,如下所示: public class Class1 { public virtual int Id { get; set; } public virtual IDictionary<DayOfWeek, IDictionary<int, decimal>> Class1Dictionary { get; set; } } Id(i

我在使用类型Dictionary的propert和类型Dictionary的value对类进行映射时遇到问题,如下所示:

  public class Class1
  {
    public virtual int Id { get; set; }

    public virtual IDictionary<DayOfWeek, IDictionary<int, decimal>> Class1Dictionary { get; set; }
  }
Id(i => i.Id);
HasMany(m => m.Class1Dictionary);

这不管用。最重要的是我想把所有的东西都放在一张桌子上,而不是两张桌子上。当我从第二本词典上选课时,我遇到了更大的问题。但首先,我可以像现在这样尝试。

在NHibernate中目前不可能使用任何类型的嵌套集合

相反,您应该按如下方式定义属性:

public virtual IDictionary<DayOfWeek, Class2> Class1Dictionary { get; set; }

这让我的头爆炸了。。。看,但当我这样做的时候,我仍然有映射的问题,你能用正确的方式写下映射吗?我不使用Fluent。有了hbm,这是一个简单、易读的过程。我不知道FNH的等价物是什么。我已经尝试过你的解决方案,但现在我不知道如何在hbm中映射它。你能帮我吗?好的,我已经做了:)如果有人想要解决方法,只问;)
public class Class2
{
    public virtual decimal this[int key]
    {
        get { return Class2Dictionary[key]; }
        set { Class2Dictionary[key] = value; }
    }

    public virtual IDictionary<int, decimal> Class2Dictionary { get; set; }
}
class1Instance.Class1Dictionary[DayOfWeek.Sunday][1] = 9.4