我試圖得到渴望加載與亞音速工作,它一直爲我返回null。Linq嵌套選擇新不工作
在下面的方法中,我試圖水化包含另一個域模型(CompanyModel)的域模型(UserModel)。但是,使用下面的代碼,UserModel.Company始終爲空。
我在這裏錯過了什麼。任何幫助,將不勝感激。
public IList<UserModel> GetUsers()
{
return (from u in SubsonicSqlServer.Users.All()
select new UserModel
{
UserId= u.UserId,
Company = (from c in u.Companies
select new CompanyModel
{
CompanyId = c.CompanyId,
CompanyName = c.CompanyName
}).SingleOrDefault(),
FirstName = u.FirstName,
LastName = u.LastName,
BirthDate = u.BirthDate
}).ToList();
}
更新(08/11/09):
更多的代碼周圍玩弄,我發現,在下面的例子中設置CompanyId也不起作用。我最初認爲這是Subsonic的一個問題,但如果下面的代碼不起作用,我猜測它與我的Linq聲明有關。有任何想法嗎?
public IList<UserModel> GetUsers()
{
return (from u in SubsonicSqlServer.Users.All()
select new UserModel
{
UserId= u.UserId,
CompanyId = Guid.NewGuid(),
FirstName = u.FirstName,
LastName = u.LastName,
BirthDate = u.BirthDate
}).ToList();
}
更新(11/17/2009):
還沒有找到一個解決方案。但我們正在切換到nHibernate(不是因爲這個問題)。
根據這個線程, (選擇非SubSonic類型):http://groups.google.com/group/subsonicproject/browse_thread/thread/2b569539b7f67a34?hl=zh-CN&pli=1它可能與此有關。 – 2009-08-12 04:14:08
你正在使用哪個亞音速版本? – Funky81 2009-08-17 23:44:51
@ Funky812:亞音速版本3.0.0.3 – Jason 2009-08-20 06:24:11