【发布时间】:2015-07-12 09:27:54
【问题描述】:
我正在尝试学习一些使用 WCF 合同的最佳实践。我有一个POCO实体类,如下图:
public class Job : IOwnerEntity<int>, ILoggableEntity
{
public int JobID { get; set; }
public int JobtypeCodeID { get; set; }
public string JobName { get; set; }
public int CustomerID { get; set; }
public int JobStatusID { get; set; }
public DateTime CreationDate { get; set; }
public DateTime ModifiedDate { get; set; }
public virtual Customer Customer { get; set; }
public virtual ICollection<JobUserAssignment> JobUsers { get; set; }
public int OwnerEntityID
{
get
{
return JobID;
}
set
{
JobID = value;
}
}
}
现在,当我创建相应的数据合同时,是否建议在数据合同中包含导航属性(此处为 JobUserAssignment 和 Customer)..?详细来说,以下哪种合约是推荐的方式?
[ServiceContract]
interface IJobService
{
Job GetJob(int id);//Gets job + job.Customer + job.JobUsers
}
或
[ServiceContract]
interface IJobService
{
Job GetJob(int id);//Gets onlyjob
Customer GetCustome(int jobid);
JobUserAssignment[] GetUsers(int jobid);
}
提前致谢,
普雷迪普
【问题讨论】:
标签: entity-framework wcf