Ejemplo n.º 1
0
 /// <summary>
 /// Constructs an instance of <see cref="ODataFeedAndEntryTypeContext"/>.
 /// </summary>
 /// <param name="serializationInfo">The serialization info from the feed or entry instance.</param>
 internal ODataFeedAndEntryTypeContextWithoutModel(ODataFeedAndEntrySerializationInfo serializationInfo)
     : base(/*throwIfMissingTypeInfo*/ false)
 {
     DebugUtils.CheckNoExternalCallers();
     Debug.Assert(serializationInfo != null, "serializationInfo != null");
     this.serializationInfo = serializationInfo;
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Creates an instance of <see cref="ODataFeedAndEntryTypeContext"/>.
        /// </summary>
        /// <param name="serializationInfo">The serialization info from the feed or entry instance.</param>
        /// <param name="entitySet">The entity set of the feed or entry.</param>
        /// <param name="entitySetElementType">The element type of the entity set.</param>
        /// <param name="expectedEntityType">The expected entity type of the feed or entry.</param>
        /// <param name="model">The Edm model instance to use.</param>
        /// <param name="throwIfMissingTypeInfo">If true, throw if any of the set or type name cannot be determined; if false, return null when any of the set or type name cannot determined.</param>
        /// <returns>A new instance of <see cref="ODataFeedAndEntryTypeContext"/>.</returns>
        internal static ODataFeedAndEntryTypeContext Create(ODataFeedAndEntrySerializationInfo serializationInfo, IEdmEntitySet entitySet, IEdmEntityType entitySetElementType, IEdmEntityType expectedEntityType, IEdmModel model, bool throwIfMissingTypeInfo)
        {
            DebugUtils.CheckNoExternalCallers();
            Debug.Assert(model != null, "model != null");
            if (serializationInfo != null)
            {
                return(new ODataFeedAndEntryTypeContextWithoutModel(serializationInfo));
            }

            if (entitySet != null && model.IsUserModel())
            {
                Debug.Assert(entitySetElementType != null, "entitySetElementType != null");
                Debug.Assert(expectedEntityType != null, "expectedEntityType != null");
                return(new ODataFeedAndEntryTypeContextWithModel(entitySet, entitySetElementType, expectedEntityType, model));
            }

            return(new ODataFeedAndEntryTypeContext(throwIfMissingTypeInfo));
        }