예제 #1
0
        public void ValidateEntitySetPathNavPropertyTypeCastUnknownNavPropertyReturnsUnknownNavigationPropertyError()
        {
            ValidationRulesTests.OperationOperationEntitySetPathMustBeValidValidTestModel testModelContainer = new ValidationRulesTests.OperationOperationEntitySetPathMustBeValidValidTestModel();

            EdmFunction function = new EdmFunction("ns", "GetStuff", new EdmEntityTypeReference(testModelContainer.T3, false), true /*isBound*/, new EdmPathExpression("bindingEntity/Bunk.T1/UnknownNav"), false);

            function.AddParameter("bindingEntity", new EdmEntityTypeReference(testModelContainer.T2, false));

            ValidateErrorInList(
                testModelContainer.Model,
                function,
                EdmErrorCode.InvalidPathUnknownNavigationProperty,
                Strings.EdmModel_Validator_Semantic_InvalidEntitySetPathUnknownNavigationProperty("EntitySetPath", "bindingEntity/Bunk.T1/UnknownNav", "UnknownNav"));
        }
예제 #2
0
        public void EdmPathExpressionWithUnknownNavigationPropertyShouldError()
        {
            EdmEntityType entityType = new EdmEntityType("ds.s", "entityType");
            EdmModel      model      = new EdmModel();

            model.AddElement(entityType);

            EdmFunction function = new EdmFunction("ns", "GetStuff", DefaultValidEntityTypeRef, true /*isBound*/, new EdmPathExpression("bindingEntity/People"), false);

            function.AddParameter("bindingEntity", new EdmEntityTypeReference(entityType, false));
            model.AddElement(function);
            ValidateErrorInList(
                model,
                function,
                EdmErrorCode.InvalidPathUnknownNavigationProperty,
                Strings.EdmModel_Validator_Semantic_InvalidEntitySetPathUnknownNavigationProperty("EntitySetPath", "bindingEntity/People", "People"));
        }