示例#1
0
		public CsdlFunctionImport(string name, bool sideEffecting, bool composable, bool bindable, string entitySet, string entitySetPath, IEnumerable<CsdlFunctionParameter> parameters, CsdlTypeReference returnType, CsdlDocumentation documentation, CsdlLocation location) : base(name, parameters, returnType, documentation, location)
		{
			this.sideEffecting = sideEffecting;
			this.composable = composable;
			this.bindable = bindable;
			this.entitySet = entitySet;
			this.entitySetPath = entitySetPath;
		}
 public CsdlFunctionImport(
     string name,
     bool sideEffecting,
     bool composable,
     bool bindable,
     string entitySet,
     string entitySetPath,
     IEnumerable <CsdlFunctionParameter> parameters,
     CsdlTypeReference returnType,
     CsdlDocumentation documentation,
     CsdlLocation location)
     : base(name, parameters, returnType, documentation, location)
 {
     this.sideEffecting = sideEffecting;
     this.composable    = composable;
     this.bindable      = bindable;
     this.entitySet     = entitySet;
     this.entitySetPath = entitySetPath;
 }
示例#3
0
		public CsdlValueTerm(string name, CsdlTypeReference type, CsdlDocumentation documentation, CsdlLocation location) : base(name, documentation, location)
		{
			this.type = type;
		}
示例#4
0
		internal static IEdmTypeReference WrapTypeReference(CsdlSemanticsSchema schema, CsdlTypeReference type)
		{
			CsdlNamedTypeReference reference = type as CsdlNamedTypeReference;
			if (reference != null)
			{
				CsdlPrimitiveTypeReference reference2 = reference as CsdlPrimitiveTypeReference;
				if (reference2 != null)
				{
					switch (reference2.Kind)
					{
					case EdmPrimitiveTypeKind.Binary:
						return new CsdlSemanticsBinaryTypeReference(schema, (CsdlBinaryTypeReference) reference2);
						
					case EdmPrimitiveTypeKind.Boolean:
					case EdmPrimitiveTypeKind.Byte:
					case EdmPrimitiveTypeKind.Double:
					case EdmPrimitiveTypeKind.Guid:
					case EdmPrimitiveTypeKind.Int16:
					case EdmPrimitiveTypeKind.Int32:
					case EdmPrimitiveTypeKind.Int64:
					case EdmPrimitiveTypeKind.SByte:
					case EdmPrimitiveTypeKind.Single:
					case EdmPrimitiveTypeKind.Stream:
						return new CsdlSemanticsPrimitiveTypeReference(schema, reference2);
						
					case EdmPrimitiveTypeKind.DateTime:
					case EdmPrimitiveTypeKind.DateTimeOffset:
					case EdmPrimitiveTypeKind.Time:
						return new CsdlSemanticsTemporalTypeReference(schema, (CsdlTemporalTypeReference) reference2);
						
					case EdmPrimitiveTypeKind.Decimal:
						return new CsdlSemanticsDecimalTypeReference(schema, (CsdlDecimalTypeReference) reference2);
						
					case EdmPrimitiveTypeKind.String:
						return new CsdlSemanticsStringTypeReference(schema, (CsdlStringTypeReference) reference2);
						
					case EdmPrimitiveTypeKind.Geography:
					case EdmPrimitiveTypeKind.GeographyPoint:
					case EdmPrimitiveTypeKind.GeographyLineString:
					case EdmPrimitiveTypeKind.GeographyPolygon:
					case EdmPrimitiveTypeKind.GeographyCollection:
					case EdmPrimitiveTypeKind.GeographyMultiPolygon:
					case EdmPrimitiveTypeKind.GeographyMultiLineString:
					case EdmPrimitiveTypeKind.GeographyMultiPoint:
					case EdmPrimitiveTypeKind.Geometry:
					case EdmPrimitiveTypeKind.GeometryPoint:
					case EdmPrimitiveTypeKind.GeometryLineString:
					case EdmPrimitiveTypeKind.GeometryPolygon:
					case EdmPrimitiveTypeKind.GeometryCollection:
					case EdmPrimitiveTypeKind.GeometryMultiPolygon:
					case EdmPrimitiveTypeKind.GeometryMultiLineString:
					case EdmPrimitiveTypeKind.GeometryMultiPoint:
						return new CsdlSemanticsSpatialTypeReference(schema, (CsdlSpatialTypeReference) reference2);
					}
				}
				return new CsdlSemanticsNamedTypeReference(schema, reference);
			}
			CsdlExpressionTypeReference expressionUsage = type as CsdlExpressionTypeReference;
			if (expressionUsage != null)
			{
				CsdlRowType typeExpression = expressionUsage.TypeExpression as CsdlRowType;
				if (typeExpression != null)
				{
					return new CsdlSemanticsRowTypeExpression(expressionUsage, new CsdlSemanticsRowTypeDefinition(schema, typeExpression));
				}
				CsdlCollectionType collection = expressionUsage.TypeExpression as CsdlCollectionType;
				if (collection != null)
				{
					return new CsdlSemanticsCollectionTypeExpression(expressionUsage, new CsdlSemanticsCollectionTypeDefinition(schema, collection));
				}
				CsdlEntityReferenceType entityTypeReference = expressionUsage.TypeExpression as CsdlEntityReferenceType;
				if (entityTypeReference != null)
				{
					return new CsdlSemanticsEntityReferenceTypeExpression(expressionUsage, new CsdlSemanticsEntityReferenceTypeDefinition(schema, entityTypeReference));
				}
			}
			return null;
		}
示例#5
0
		public CsdlAssociationEnd(string role, CsdlTypeReference type, EdmMultiplicity multiplicity, CsdlOnDelete onDelete, CsdlDocumentation documentation, CsdlLocation location) : base(role, documentation, location)
		{
			this.type = type;
			this.multiplicity = multiplicity;
			this.onDelete = onDelete;
		}
示例#6
0
		public CsdlProperty(string name, CsdlTypeReference type, bool isFixedConcurrency, string defaultValue, CsdlDocumentation documentation, CsdlLocation location) : base(name, documentation, location)
		{
			this.type = type;
			this.isFixedConcurrency = isFixedConcurrency;
			this.defaultValue = defaultValue;
		}
示例#7
0
 public CsdlFunction(string name, IEnumerable <CsdlFunctionParameter> parameters, string definingExpression, CsdlTypeReference returnType, CsdlDocumentation documentation, CsdlLocation location)
     : base(name, parameters, returnType, documentation, location)
 {
     this.definingExpression = definingExpression;
 }
示例#8
0
 public CsdlCollectionExpression(CsdlTypeReference type, IEnumerable <CsdlExpressionBase> elementValues, CsdlLocation location)
     : base(location)
 {
     this.type          = type;
     this.elementValues = new List <CsdlExpressionBase>(elementValues);
 }
 public CsdlAssertTypeExpression(CsdlTypeReference type, CsdlExpressionBase operand, CsdlLocation location) : base(location)
 {
     this.type    = type;
     this.operand = operand;
 }
示例#10
0
		public CsdlAssertTypeExpression(CsdlTypeReference type, CsdlExpressionBase operand, CsdlLocation location) : base(location)
		{
			this.type = type;
			this.operand = operand;
		}
 public CsdlRecordExpression(CsdlTypeReference type, IEnumerable<CsdlPropertyValue> propertyValues, CsdlLocation location)
     : base(location)
 {
     this.type = type;
     this.propertyValues = new List<CsdlPropertyValue>(propertyValues);
 }
 public CsdlEntityReferenceType(CsdlTypeReference entityType, CsdlLocation location) : base(location)
 {
     this.entityType = entityType;
 }
 public CsdlFunctionReturnType(CsdlTypeReference returnType, CsdlLocation location) : base(location)
 {
     this.returnType = returnType;
 }
示例#14
0
 public CsdlProperty(string name, CsdlTypeReference type, bool isFixedConcurrency, string defaultValue, CsdlDocumentation documentation, CsdlLocation location) : base(name, documentation, location)
 {
     this.type = type;
     this.isFixedConcurrency = isFixedConcurrency;
     this.defaultValue       = defaultValue;
 }
示例#15
0
		public CsdlFunctionParameter(string name, CsdlTypeReference type, EdmFunctionParameterMode mode, CsdlDocumentation documentation, CsdlLocation location) : base(name, documentation, location)
		{
			this.type = type;
			this.mode = mode;
		}
示例#16
0
 public CsdlValueTerm(string name, CsdlTypeReference type, CsdlDocumentation documentation, CsdlLocation location) : base(name, documentation, location)
 {
     this.type = type;
 }
示例#17
0
 public CsdlAssociationEnd(string role, CsdlTypeReference type, EdmMultiplicity multiplicity, CsdlOnDelete onDelete, CsdlDocumentation documentation, CsdlLocation location) : base(role, documentation, location)
 {
     this.type         = type;
     this.multiplicity = multiplicity;
     this.onDelete     = onDelete;
 }
示例#18
0
 public CsdlFunctionParameter(string name, CsdlTypeReference type, EdmFunctionParameterMode mode, CsdlDocumentation documentation, CsdlLocation location) : base(name, documentation, location)
 {
     this.type = type;
     this.mode = mode;
 }
示例#19
0
 public CsdlCollectionType(CsdlTypeReference elementType, CsdlLocation location) : base(location)
 {
     this.elementType = elementType;
 }
示例#20
0
		public CsdlFunction(string name, IEnumerable<CsdlFunctionParameter> parameters, string definingExpression, CsdlTypeReference returnType, CsdlDocumentation documentation, CsdlLocation location) : base(name, parameters, returnType, documentation, location)
		{
			this.definingExpression = definingExpression;
		}
示例#21
0
		public CsdlCollectionExpression(CsdlTypeReference type, IEnumerable<CsdlExpressionBase> elementValues, CsdlLocation location) : base(location)
		{
			this.type = type;
			this.elementValues = new List<CsdlExpressionBase>(elementValues);
		}
示例#22
0
 protected CsdlFunctionBase(string name, IEnumerable <CsdlFunctionParameter> parameters, CsdlTypeReference returnType, CsdlDocumentation documentation, CsdlLocation location) : base(name, documentation, location)
 {
     this.parameters = new List <CsdlFunctionParameter>(parameters);
     this.returnType = returnType;
 }
示例#23
0
 protected CsdlFunctionBase(string name, IEnumerable<CsdlFunctionParameter> parameters, CsdlTypeReference returnType, CsdlDocumentation documentation, CsdlLocation location)
     : base(name, documentation, location)
 {
     this.parameters = new List<CsdlFunctionParameter>(parameters);
     this.returnType = returnType;
 }
示例#24
0
		public CsdlCollectionType(CsdlTypeReference elementType, CsdlLocation location) : base(location)
		{
			this.elementType = elementType;
		}
示例#25
0
		public CsdlEntityReferenceType(CsdlTypeReference entityType, CsdlLocation location) : base(location)
		{
			this.entityType = entityType;
		}
示例#26
0
 public CsdlRecordExpression(CsdlTypeReference type, IEnumerable <CsdlPropertyValue> propertyValues, CsdlLocation location)
     : base(location)
 {
     this.type           = type;
     this.propertyValues = new List <CsdlPropertyValue>(propertyValues);
 }
示例#27
0
		public CsdlFunctionReturnType(CsdlTypeReference returnType, CsdlLocation location) : base(location)
		{
			this.returnType = returnType;
		}