[英]WCF DataServices + Silverlight + Entity Framework CodeFirst model object is null
我有一個帶有以下CodeFirst模型的WCF DataService:
public class Project
{
public int ProjectID { get; set; }
public string Name { get; set; }
public virtual Owner Owner { get; set; }
}
public class Owner
{
public int OwnerID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
我也有標准的支持類SchedulerContext
, SchedulerContextInitializer
和SchedulerService.svc
。 我的服務如下:
public class SchedulerService : DataService<ObjectContext>
{
public static void InitializeService(DataServiceConfiguration config)
{
config.SetEntitySetAccessRule("*", EntitySetRights.All);
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3;
}
protected override ObjectContext CreateDataSource()
{
var ctx = new SchedulerContext();
var objectContext = ((IObjectContextAdapter)ctx).ObjectContext;
return objectContext;
}
}
我在我的Silverlight項目中添加了Service Reference。 我可以在瀏覽器中瀏覽該服務並查看種子數據。 當我轉到http://localhost:31560/SchedulerService.svc/Projects(1)/Owner
,我可以看到我的種子數據。 但是,當我的項目加載到Silverlight數據訪問類中時:
public class SchedulerService : ISchedulerService
{
public SchedulerService()
{
var context = new SchedulerContext(new Uri("/SchedulerService.svc", UriKind.Relative));
this.Projects = new DataServiceCollection<Project>();
DataServiceQuery<Product> query = context.Projects;
this.Projects.LoadAsync(query);
}
public DataServiceCollection<Project> Projects { get; private set; }
}
每個項目的所有者始終為空! 我該如何解決?!
你有沒有嘗試過:
context.Projects.Expand("Owner");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.