当前位置: 首页>>代码示例>>C#>>正文


C# EntityModelSchema.Resolve方法代码示例

本文整理汇总了C#中Microsoft.Test.Taupo.Contracts.EntityModel.EntityModelSchema.Resolve方法的典型用法代码示例。如果您正苦于以下问题:C# EntityModelSchema.Resolve方法的具体用法?C# EntityModelSchema.Resolve怎么用?C# EntityModelSchema.Resolve使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Microsoft.Test.Taupo.Contracts.EntityModel.EntityModelSchema的用法示例。


在下文中一共展示了EntityModelSchema.Resolve方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Parse

        /// <summary>
        /// Parses the specified CSDL/SSDL content.
        /// </summary>
        /// <param name="xsdlContent">Content of multiple CSDL or multiple SSDL files.</param>
        /// <returns>
        /// Instance of <see cref="EntityModelSchema"/> which represents Entity Model parsed from the files.
        /// </returns>
        public EntityModelSchema Parse(params XElement[] xsdlContent)
        {
            EntityModelSchema model = new EntityModelSchema();

            this.entityTypeFullNames = new List<string>();
            this.complexTypeFullNames = new List<string>();
            this.enumTypeFullNames = new List<string>();

            foreach (XElement xsdl in xsdlContent)
            {
                this.RegisterNominalTypes(xsdl);
            }

            foreach (XElement xsdl in xsdlContent)
            {
                this.ParseSingleXsdl(model, xsdl);
            }

            return model.Resolve();
        }
开发者ID:larsenjo,项目名称:odata.net,代码行数:27,代码来源:XsdlParserBase.cs

示例2: ConvertToTaupoModel

        /// <summary>
        /// Converts a model from Edm term into Taupo term
        /// </summary>
        /// <param name="edmModel">The input model in Edm term</param>
        /// <returns>The output model in Taupo term</returns>
        public EntityModelSchema ConvertToTaupoModel(IEdmModel edmModel)
        {
            this.edmModel = edmModel;
            this.associationRegistry = new AssociationRegistry();

            var taupoModel = new EntityModelSchema();

            foreach (var edmComplexType in edmModel.SchemaElements.OfType<IEdmComplexType>())
            {
                ComplexType taupoComplexType = this.ConvertToTaupoComplexType(edmComplexType);
                taupoModel.Add(taupoComplexType);
            }

            foreach (var edmEntityType in edmModel.SchemaElements.OfType<IEdmEntityType>())
            {
                EntityType taupoEntityType = this.ConvertToTaupoEntityType(edmEntityType);
                taupoModel.Add(taupoEntityType);

                // convert to Association using information inside Navigations
                foreach (var edmNavigationProperty in edmEntityType.DeclaredNavigationProperties())
                {
                    if (!this.associationRegistry.IsAssociationRegistered(edmNavigationProperty))
                    {
                        this.associationRegistry.RegisterAssociation(edmNavigationProperty);
                    }
                }
            }

            var edmEntityContainer = edmModel.EntityContainer;
            if (edmEntityContainer != null)
            {
                EntityContainer taupoEntityContainer = this.ConvertToTaupoEntityContainer(edmEntityContainer);
                taupoModel.Add(taupoEntityContainer);
            }

            foreach (var edmFunction in edmModel.SchemaElements.OfType<IEdmOperation>())
            {
                Function taupoFunction = this.ConvertToTaupoFunction(edmFunction);
                taupoModel.Add(taupoFunction);
            }

            foreach (var edmEnum in edmModel.SchemaElements.OfType<IEdmEnumType>())
            {
                EnumType taupoEnumType = this.ConvertToTaupoEnumType(edmEnum);
                taupoModel.Add(taupoEnumType);
            }

            return taupoModel.Resolve();
        }
开发者ID:AlineGuan,项目名称:odata.net,代码行数:54,代码来源:EdmToTaupoModelConverter.cs


注:本文中的Microsoft.Test.Taupo.Contracts.EntityModel.EntityModelSchema.Resolve方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。