0
真的想讓我的頭在這個附近,但看不到樹光。可能錯過了一些明顯的東西!c#流利的NHibernate一對多的關係對象返回null
在當我創建它工作的任何問題中,但是當我嘗試列出的值,鏈接是空的對象的數據庫...
有兩個對象,Question
和Response
。一個問題可以有很多的反應所以這裏的模型:
public class Question
{
public int Id { get; set; }
public int QuestionNumber { get; set; }
public string QuestionText { get; set; }
public IList<Response> Responses { get; set; }
public Question()
{
Responses = new List<Response>();
}
}
public class Response
{
public int Id { get; private set; }
public Question Question { get; set; }
public int ResponseValue { get; set; }
public string ResponseText { get; set; }
}
,這裏是映射:
public class QuestionMap : ClassMap<Question>
{
public QuestionMap()
{
Id(q => q.Id);
Map(q => q.QuestionNumber);
Map(q => q.QuestionText).Length(300).Not.Nullable();
HasMany<Response>(q => q.Responses).Inverse().AsBag();
}
}
public class ResponseMap : ClassMap<Response>
{
public ResponseMap()
{
Id(x => x.Id);
References<Question>(x => x.Question).Not.Nullable();
Map(x => x.ResponseText);
Map(x => x.ResponseValue);
}
}
所以,當我使用
var responses = _session.CreateCriteria(typeof(Response)).List<Response>();
和調試和看問題對象,它始終爲空。
這沒有奏效 - 仍然返回null。我從另一個角度得到了這個工作,但我會將其標記爲已解決 – Matt
然後將其作爲答案刪除併發布您的解決方案。你給我的答案投下了什麼理由?因爲它不適合你? – mynkow
我沒投過票! – Matt