是否有可能使用OpenRasta返回json中的嵌套類?OpenRasta Json返回嵌套類
我使用的代碼第一(這在理論上不應該有所作爲,因爲它們只是POCO類)EF4.1。
下面是一個例子:
public class AppUser
{
[Key]
public int AppUserId { get; set; }
public string WinLogin { get; set; }
public string ScreenName { get; set; }
public string AgencyId { get; set; }
public virtual ICollection<UserAppVersion> UserAppVersion { get; set; }
}
public class UserAppVersion
{
[Key]
public int UaVersionId { get; set; }
public int AppUserId { get; set; }
public int AppVersionId { get; set; }
public DateTime DateCreated { get; set; }
public DateTime DateUpdated { get; set; }
public virtual AppUser User { get; set; }
public virtual AppVersion Version { get; set; }
}
我嘗試使用這個JSON中返回一個APPUSER記錄:
ResourceSpace.Has.ResourcesOfType<AppUser>()
.AtUri("/user").HandledBy<UserHandler>().AsJsonDataContract();
但我得到一個錯誤:
System.Runtime .Serialization.SerializationException:類型'System.Data.Entity.DynamicProxies.UserAppVersion_FD8D86F0A3AE39A0C370918637C1A90AD8D3ACA3E149677EA82C0A8D10ED0F8D'w ith數據協定名稱'UserAppVersion_FD8D86F0A3AE39A0C370918637C1A90AD8D3ACA3E149677EA82C0A8D10ED0F8D:http://schemas.datacontract.org/2004/07/System.Data.Entity.DynamicProxies'不是預期的。考慮使用DataContractResolver或將任何不知道的類型靜態添加到已知類型的列表中 - 例如,使用KnownTypeAttribute屬性或將它們添加到傳遞給DataContractSerializer的已知類型的列表中。
不幸的是我不知道如何解決這個問題。有什麼建議麼?
感謝@serialseb,我不認爲它實際上是OpenRasta,會考慮它。 – 2011-06-06 13:19:28