私は流暢なNhibernateを使って簡単なクラスをマップしています
そして、このクラスをMySQL DBで作成するためにSchema Generationを使用しています。私は(私は、クロスランゲージのドメインクラスをマッピングしています)私の性質のためのIList <>を使用することはできません
だから私は単純な配列を使用する必要があります。..単純な配列のマッピング
私はNHibernateは、2つの間の接続テーブルを作成したいですクラス、
これらは、ドメインクラスです:
public class ClassOne
{
public virtual Guid Guid { get; set; }
public virtual String Title { get; set; }
public virtual ClassTwo[] Tags { get; set; }
}
public class ClassTwo
{
public virtual Guid Guid { get; set; }
public virtual string Title { get; set; }
}
そして、これはマップである:
public class ClassOneMap : ClassMap<ClassOneMap>
{
public ClassOneMap()
{
Id(x => x.Guid).GeneratedBy.GuidComb();
Map(x => x.Title);
HasManyToMany(x => x.Tags)
.Cascade.SaveUpdate());
}
}
public class ClassTwoMap : ClassMap<ClassTwo>
{
public ClassTwoMap()
{
Id(x => x.Guid).GeneratedBy.GuidComb();
Map(x => x.Title);
}
}
スキーマが素晴らしい!それはClassOne、ClassTwoとClassTwoToClassOneテーブルを持っています しかし、私はClassOneのインスタンスを永続化しようとしていますが、無効なキャスト例外があります.. これは、IListの配列を変更することによって解決されますが、
スキーマアーキテクチャを変更せずに配列を使用するようにFluentマッピングを設定する方法を教えてもらえますか?
ありがとうございました!
私は好奇心が強い、他のどのようなあなたはIListを許さない言語を使っていますか? –