我剛剛添加擴展到我的查詢第四層 - 即:一些對象沒有實現(但在查詢響應中) - 繼承問題?
.expand("..., ScanDates.Printouts.BMDSites, ...");
而且我發現,雖然該數據在響應返回,不填充下面的「打印輸出的對象「(即patient.ScanDates.Printouts.BMDSites是一個空數組,儘管在響應中返回了幾個元素)。
我已經更改了控制器操作上的MaxExpansionDepth,並且在控制檯或服務器端沒有出現錯誤。我也成功地通過單獨查詢它們來填充BMDSite對象,但這意味着需要十到二十次返回到服務器......這並不理想。
編輯:我只是嘗試了其他幾個查詢,似乎,即使我只是在做一個單一的擴大(即:.expand(「BMDSites」)),發生同樣的問題 - 數據是作爲迴應,但沒有實體化。當我爲BMDSites查詢時(例如,針對特定的打印輸出),數組被正確填充和物化。
編輯2:它只是發生在我身上的打印輸出類是基類TPH繼承層次的......環顧了一下,我懷疑這可能是問題的根源。
非常感謝您的任何想法! -Brad
感謝這麼多的響應周杰倫。做擴展爲包括在服務器上運行良好,所以我開始創建一個簡化的模型來發布/複製這個問題 - 這當然工作得很好。我繼續添加功能(我認爲是無關緊要的),直到我再次打破它。原來是Printout對象上的一些[NotMapped]屬性。解決方案是在EF模型中添加對JSON.net的引用,並在[NotMapped]之外添加[JsonIgnore]。我會在下面發表更多的細節,以防其他人遇到同樣的情況。再次感謝您的時間+辛勤工作 - 愛Breeze。 -Brad – bparcels
任何其他細節都會很好,請將此問題標記爲已回答,以便其他人知道這是可以解決的。謝謝。 –