/// <summary> /// Creates a shallow copy of this <see cref="ODataSimplifiedOptions"/>. /// </summary> /// <returns>A shallow copy of this <see cref="ODataSimplifiedOptions"/>.</returns> public ODataSimplifiedOptions Clone() { var copy = new ODataSimplifiedOptions(); copy.CopyFrom(this); return(copy); }
private void CopyFrom(ODataSimplifiedOptions other) { ExceptionUtils.CheckArgumentNotNull(other, "other"); this.EnableParsingKeyAsSegmentUrl = other.EnableParsingKeyAsSegmentUrl; this.EnableReadingKeyAsSegment = other.EnableReadingKeyAsSegment; this.EnableReadingODataAnnotationWithoutPrefix = other.EnableReadingODataAnnotationWithoutPrefix; this.EnableWritingKeyAsSegment = other.EnableWritingKeyAsSegment; this.EnableWritingODataAnnotationWithoutPrefix = other.EnableWritingODataAnnotationWithoutPrefix; }
/// <summary> /// Constructor. /// </summary> /// <param name="format">The format for this input context.</param> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageReaderSettings">Configuration settings of the OData reader.</param> protected ODataInputContext( ODataFormat format, ODataMessageInfo messageInfo, ODataMessageReaderSettings messageReaderSettings) { ExceptionUtils.CheckArgumentNotNull(format, "format"); ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); ExceptionUtils.CheckArgumentNotNull(messageReaderSettings, "messageReaderSettings"); this.format = format; this.messageReaderSettings = messageReaderSettings; this.readingResponse = messageInfo.IsResponse; this.synchronous = !messageInfo.IsAsync; this.model = messageInfo.Model ?? EdmCoreModel.Instance; this.payloadUriConverter = messageInfo.PayloadUriConverter; this.container = messageInfo.Container; this.edmTypeResolver = new EdmTypeReaderResolver(this.Model, this.MessageReaderSettings.ClientCustomTypeResolver); this.payloadValueConverter = ODataPayloadValueConverter.GetPayloadValueConverter(this.container); this.odataSimplifiedOptions = ODataSimplifiedOptions.GetODataSimplifiedOptions(this.container, messageReaderSettings.Version); }
/// <summary> /// Constructor. /// </summary> /// <param name="format">The format for this output context.</param> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> protected ODataOutputContext( ODataFormat format, ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { ExceptionUtils.CheckArgumentNotNull(format, "format"); ExceptionUtils.CheckArgumentNotNull(messageWriterSettings, "messageWriterSettings"); this.format = format; this.messageWriterSettings = messageWriterSettings; this.writingResponse = messageInfo.IsResponse; this.synchronous = !messageInfo.IsAsync; this.model = messageInfo.Model ?? EdmCoreModel.Instance; this.payloadUriConverter = messageInfo.PayloadUriConverter; this.container = messageInfo.Container; this.edmTypeResolver = EdmTypeWriterResolver.Instance; this.payloadValueConverter = ODataPayloadValueConverter.GetPayloadValueConverter(this.container); this.writerValidator = messageWriterSettings.Validator; this.odataSimplifiedOptions = ODataSimplifiedOptions.GetODataSimplifiedOptions(this.container); }
internal static ODataUrlKeyDelimiter GetODataUrlKeyDelimiter(IServiceProvider container) { return(ODataSimplifiedOptions.GetODataSimplifiedOptions(container).EnableParsingKeyAsSegmentUrl ? ODataUrlKeyDelimiter.Slash : ODataUrlKeyDelimiter.Parentheses); }