Exemplo n.º 1
0
 internal IEnumerable <ResourceProperty> GetResourceSerializableProperties(ResourceSetWrapper resourceSet, ResourceType resourceType)
 {
     if (resourceType.ResourceTypeKind == ResourceTypeKind.EntityType)
     {
         return(resourceSet.GetEntitySerializableProperties(this, resourceType));
     }
     return(resourceType.Properties);
 }
Exemplo n.º 2
0
 internal Version GetMinimumResponseVersion(IDataService service, ResourceSetWrapper resourceSet, bool considerEpmInVersion)
 {
     Version versionToRaise = WebUtil.RaiseVersion(RequestDescription.Version1Dot0, this.GetMinimumProtocolVersion(considerEpmInVersion));
     if (service.Configuration.DataServiceBehavior.ShouldIncludeAssociationLinksInResponse && resourceSet.GetEntitySerializableProperties(service.Provider, this).Any<ResourceProperty>(p => (p.TypeKind == System.Data.Services.Providers.ResourceTypeKind.EntityType)))
     {
         versionToRaise = WebUtil.RaiseVersion(versionToRaise, RequestDescription.Version3Dot0);
     }
     if (this.IsOpenType)
     {
         Version version2 = service.Configuration.DataServiceBehavior.MaxProtocolVersion.ToVersion();
         Version requestMaxVersion = service.OperationContext.Host.RequestMaxVersion;
         Version targetVersion = (requestMaxVersion < version2) ? requestMaxVersion : version2;
         versionToRaise = WebUtil.RaiseVersion(versionToRaise, targetVersion);
     }
     return versionToRaise;
 }
Exemplo n.º 3
0
        internal Version GetMinimumResponseVersion(IDataService service, ResourceSetWrapper resourceSet, bool considerEpmInVersion)
        {
            Version versionToRaise = WebUtil.RaiseVersion(RequestDescription.Version1Dot0, this.GetMinimumProtocolVersion(considerEpmInVersion));

            if (service.Configuration.DataServiceBehavior.ShouldIncludeAssociationLinksInResponse && resourceSet.GetEntitySerializableProperties(service.Provider, this).Any <ResourceProperty>(p => (p.TypeKind == System.Data.Services.Providers.ResourceTypeKind.EntityType)))
            {
                versionToRaise = WebUtil.RaiseVersion(versionToRaise, RequestDescription.Version3Dot0);
            }
            if (this.IsOpenType)
            {
                Version version2          = service.Configuration.DataServiceBehavior.MaxProtocolVersion.ToVersion();
                Version requestMaxVersion = service.OperationContext.Host.RequestMaxVersion;
                Version targetVersion     = (requestMaxVersion < version2) ? requestMaxVersion : version2;
                versionToRaise = WebUtil.RaiseVersion(versionToRaise, targetVersion);
            }
            return(versionToRaise);
        }