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


C# HttpVerbs.IsInsert方法代码示例

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


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

示例1: DetermineWhetherResponseBodyOrETagShouldBeWritten

        /// <summary>
        /// Determines the whether response body should be written based on the request verb and the uri.
        /// NOTE: Does not consider the client's preference when determining this.
        /// </summary>
        /// <param name="requestVerb">The request verb.</param>
        internal void DetermineWhetherResponseBodyOrETagShouldBeWritten(HttpVerbs requestVerb)
        {
            if (this.responseBodyOrETagShouldBeWritten.HasValue)
            {
                return;
            }

            this.responseBodyOrETagShouldBeWritten = true;

            if (this.TargetSource != RequestTargetSource.ServiceOperation)
            {
                if (requestVerb.IsInsert() || requestVerb.IsUpdate())
                {
                    this.responseBodyOrETagShouldBeWritten = !this.LinkUri;
                }
                else if (requestVerb.IsDelete())
                {
                    this.responseBodyOrETagShouldBeWritten = false;
                }
            }
            else if (this.TargetKind == RequestTargetKind.VoidOperation)
            {
                this.responseBodyOrETagShouldBeWritten = false;
            }
        }
开发者ID:larsenjo,项目名称:odata.net,代码行数:30,代码来源:RequestDescription.cs

示例2: DetermineWhetherResponseBodyShouldBeWritten

        /// <summary>
        /// Determines the whether response body should be written based on the request verb, the uri, and the client's preference.
        /// </summary>
        /// <param name="requestVerb">The request verb.</param>
        internal void DetermineWhetherResponseBodyShouldBeWritten(HttpVerbs requestVerb)
        {
            if (this.responseBodyShouldBeWritten.HasValue)
            {
                return;
            }

            if (this.Preference.ShouldIncludeResponseBody)
            {
                this.responseBodyShouldBeWritten = true;
            }
            else if (this.Preference.ShouldNotIncludeResponseBody || !this.ShouldWriteResponseBodyOrETag)
            {
                this.responseBodyShouldBeWritten = false;
            }
            else
            {
                Debug.Assert(!this.Preference.HasResponseBodyPreference, "Should only reach here if no preference was specified.");
                Debug.Assert(this.ShouldWriteResponseBodyOrETag, "Should only reach here if response body or ETag *might* be written.");

                this.responseBodyShouldBeWritten = true;
                if (this.TargetSource != RequestTargetSource.ServiceOperation)
                {
                    if (requestVerb.IsInsert())
                    {
                        this.responseBodyShouldBeWritten = !this.LinkUri;
                    }
                    else if (requestVerb.IsChange())
                    {
                        this.responseBodyShouldBeWritten = false;
                    }
                }
            }
        }
开发者ID:larsenjo,项目名称:odata.net,代码行数:38,代码来源:RequestDescription.cs

示例3: InterpretClientPreference

        /// <summary>
        /// Interprets the client preference for having a response body.
        /// </summary>
        /// <param name="requestDescription">The request description.</param>
        /// <param name="verb">The request verb.</param>
        /// <param name="requestMessage">The request message.</param>
        /// <returns>An enum representation of the client's preference.</returns>
        private static ResponseBodyPreference InterpretClientPreference(RequestDescription requestDescription, HttpVerbs verb, IODataRequestMessage requestMessage)
        {
            Debug.Assert(requestDescription != null, "requestDescription != null");

            // If no responseBodyPreference given, we have default behavior of producing content for POST and not producing it for PUT/PATCH.
            // If responseBodyPreference is given we honor the responseBodyPreference only if the request was for an entity and following conditions are true:
            // This is not a service operation invoke
            // DSV was set to 3.0 and above
            // Server is configured to be >= 3.0
            if (requestDescription.LinkUri || requestDescription.SegmentInfos[0].TargetSource == RequestTargetSource.ServiceOperation || requestDescription.RequestVersion < VersionUtil.Version4Dot0)
            {
                return ResponseBodyPreference.None;
            }

            if ((verb.IsInsert()) || ((verb.IsUpdate()) && (requestDescription.TargetKind == RequestTargetKind.Resource || requestDescription.IsRequestForNonEntityProperty)))
            {
                if (requestMessage.PreferHeader().ReturnContent.HasValue)
                {
                    return requestMessage.PreferHeader().ReturnContent.Value ? ResponseBodyPreference.Content : ResponseBodyPreference.NoContent;
                }
            }

            // TODO: move logic for when/when-not-to write a response body here and remove all checks for 'none' elsewhere
            return ResponseBodyPreference.None;
        }
开发者ID:larsenjo,项目名称:odata.net,代码行数:32,代码来源:ClientPreference.cs


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