2010-06-01 99 views
0

我只是使用Subsonic編寫我的第一個「Hello World」程序,爲此我將一個簡單的小客戶/發票/ InvoiceItem/Product數據庫放在一起。subsonic外鍵返回集合?

連接已成功完成到數據庫,並生成了所有類ActiveRecord類。但由於某些原因,Invoice類有一個名爲Customers的屬性,該屬性返回Customer對象的集合,即使Invoice表具有CustomerID字段,該字段對Customer表具有外鍵。我本來預計Customer財產將返回一個單一的Customer對象。

我所有的FK都發生同樣的事情。我一定在做錯事 - 但是什麼?

回答

1

這是預期的行爲。 Invoice.Customers集合中的第一個(也是唯一)項目將是與外鍵相關的Customer對象。

+0

爲什麼會出現這種預期行爲?我來自內置的Linq-To-SQL O/R設計器,並且按照我所描述的方式產生了「預期行爲」。你不得不承認這樣做更合乎邏輯,不是嗎?很明顯,這裏有一些技術問題,迫使一個相當可笑的解決方法 - 但爲什麼? – 2010-06-01 16:55:34

+0

我不知道爲什麼這是如何在SubSonic 3中實現的。如您所述,SubSonic 2會生成Invoice.Customer字段。但是,您可以在T4模板中自行添加此字段。 – sparks 2010-06-01 17:01:41