예제 #1
0
        internal CsdlAction OnActionElement(XmlElementInfo element, XmlElementValueCollection childValues)
        {
            string name          = Required(CsdlConstants.Attribute_Name);
            bool   isBound       = OptionalBoolean(CsdlConstants.Attribute_IsBound) ?? CsdlConstants.Default_IsBound;
            string entitySetPath = Optional(CsdlConstants.Attribute_EntitySetPath);

            IEnumerable <CsdlOperationParameter> parameters = childValues.ValuesOfType <CsdlOperationParameter>();

            CsdlOperationReturn returnElement = childValues.ValuesOfType <CsdlOperationReturn>().FirstOrDefault();

            this.ReportOperationReadErrorsIfExist(entitySetPath, isBound, name);

            return(new CsdlAction(name, parameters, returnElement, isBound, entitySetPath, element.Location));
        }
예제 #2
0
        internal static CsdlAction Action(
            string name,
            CsdlOperationParameter[] parameters = default(CsdlOperationParameter[]),
            CsdlOperationReturn typeReference   = null,
            bool isBound          = false,
            string entitySetPath  = null,
            CsdlLocation location = null)

        {
            if (parameters == null)
            {
                parameters = new CsdlOperationParameter[] { };
            }

            return(new CsdlAction(
                       name,
                       parameters,
                       typeReference,
                       isBound,
                       entitySetPath,
                       location));
        }
 public CsdlSemanticsOperationReturn(CsdlSemanticsOperation declaringOperation, CsdlOperationReturn operationReturn)
     : base(operationReturn)
 {
     this.declaringOperation = declaringOperation;
     this.operationReturn    = operationReturn;
 }