是否可以从由实体类型集合构成的WCF数据服务中返回复杂类型?如何从WCF数据服务返回复杂类型?
例如:
//the complex type to return
class Entities
{
ICollection<Contract> Contracts;
...
}
//configuration
public partial class MyContext: DbContext
{
public MyContext()
: base("name=DBEntities")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.ComplexType<Entities>();
modelBuilder.Entity<Contract>().HasKey(c=>c.Id);
...
}
...
}
//the WCF Data Service
public class PricingDataService : DataService<ObjectContext>, IDisposable
{
[WebGet]
public Entities GetEntities()
{
return new Entities();
}
}
当我尝试了上面的配置,我得到一个异常:
" The exception message is 'One or more validation errors
were detected during model generation: System.Data.Edm.EdmEntityType: Name:
Each type name in a schema must be unique. Type name 'Contract' was already
defined."
当您尝试此操作时会发生什么情况? – 2011-04-12 19:23:49
我收到一个异常:“异常消息是'在模型生成期间检测到一个或多个验证错误:System.Data.Edm.EdmEntityType:Name:模式中的每个类型名称必须是唯一的。类型名'Contract'已经是定义“。 – Attilah 2011-04-12 19:26:58
所以,这似乎与返回复杂类型无关。这是你的模型的问题。 – 2011-04-12 19:29:37