/// <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; }
/// <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)); }