0

今天,我遇到了一个非常奇怪的 WCF 服务问题,让我头晕目眩。

在我的代码中,我的 WCF 接口中有两个定义。

[OperationContract]
List<DOMAIN.Models.Configuration.PAEConfiguration> GetConfigurationList(Guid companyID);

[OperationContract]
DOMAIN.Models.Configuration.PAEConfiguration GetConfigurationByCompanyID(Guid companyID);

这两者显然都与同一个定义的 POCO 类有关。

但是,虽然顶级 LIST 版本工作正常,但在最后一次调用的编译时出现以下错误。

The type 'PAE.DOMAIN.Models.Configuration.PAEConfiguration' is defined in an assembly that is not referenced. You must add a reference to assembly 'PAE.DOMAIN, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.

第一个电话完美无缺。第二个导致构建错误。

显然,我发现这有点令人困惑,因为您可以想象,如果可以作为 x 的列表传递,则可以将其作为 x 进行管理。

源 POCO 类是

[DataContract]
public class PAEConfiguration : PAEConfigurationTemplate
{
    [DataMember]
    public Guid PAEConfigurationID { get; set; }
}

继承了这一点。

[DataContract]
public class PAEConfigurationTemplate
{
   [DataMember]
   public Guid CompanyID { get; set; }

   /* And lots more besides */

}
4

0 回答 0