问题标签 [weboperationcontext]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wcf - 什么是 HttpContext.Current.Request.RawUrl 的 WCF 等效项?
我有一些在纯 WCF 上下文中运行的 RESTful 服务(即未启用 ASP.NET 兼容性,因此没有HttpContext.Current
可用的对象)。
服务的 URL 在请求开始时使用 an IHttpModule
(此时确实有 anHttpContext
并使用 重写它HttpContext.Current.RewritePath
)重写,以摆脱.svc
URL 中的扩展等内容。
但是,我需要访问从 WCF 基础结构中请求的原始 URL。HttpContext.Current.Request.RawUrl
任何地方的OperationContext
或类上是否有等价物WebOperationContext
?使用WebOperationContext.Current.IncomingRequest.UriTemplateMatch.RequestUri
返回重写的 URL,而不是原始 URL。
.net - 当 InstanceContextMode 为 Single 时 System.ServiceModel.Web.WebOperationContext 如何工作?
如果我的 WCF 服务具有此属性:
以下单例如何在通话中工作?
wcf - WCF 4 REST 服务不能返回 StatusDescription,只有 StatusCode
我目前正在将我的 WCF RESTful 服务从 .NET 3.5(Starter Kit)迁移到 .NET 4。我使用 Visual Studio 2010 中的 WCF Rest 服务模板开始了我的项目。我必须弄清楚如何保留我的授权方案(以前使用 ServiceAuthorizationManager 完成 RequestInterceptor。经过一些工作和研究,我完成了它。但现在我有一个附带问题。我的服务过去常常使用 HTTP 状态代码和简短描述来反馈我的客户任何处理错误。我在我的服务方法的许多地方都使用 WebOperationContext 向客户描述出了什么问题,如下所示:
但在 WCF 4 中,只有 StatusCode 有效 - StatusDescription 静默失败。我不知道为什么。我唯一的猜测是 WebOperationContext 在这个新的 WCF 4 场景中不起作用,我应该改用 OperationContext,但这也不起作用。在我的扩展 ServiceAuthorizationManager 的自定义类中使用了以下方法,通知客户端由于身份验证摘要格式错误而无法访问请求:
即使在此处使用 OperationContext 直接(安装为 WebOperationContext),StatusDescription 也不起作用。
我在这里缺少什么?为什么这么小的东西可以从.NET 3.5 突破到 4?
wcf - WebOperationContext 对象引用未设置为对象的实例
当我尝试在 WCF 项目中使用 WebOperationContext.Current 时,Current 为空。下面是示例。任何人都可以阐明它吗?
WebForm - default.aspx:
//WCF接口
//WCF实现
系统设置:ASP.NET 3.5
先感谢您。
我的问题的描述更改如下:
当我尝试在 WCF 项目中使用 WebOperationContext.Current 时,Current 为空。下面是示例。任何人都可以阐明它吗?
我需要的是一种透明的方式(或一种对现有代码改动很小的方式),以使现有代码基于令牌做指定的工作。这就是这里使用 HttpModule 的原因,如下所示:
//HttpModule: 插入一个token,在pipneline中工作可以基于。如前所述,HttpModule 用于对现有代码进行最少的更改。
系统设置:ASP.NET 3.5
先感谢您。
c# - WebOperationContext.Current.OutgoingResponse.StatusDescription 被忽略
我在服务器端为 WebOperationContext.Current.OutgoingResponse.StatusDescription 属性设置的值被忽略。客户端收到默认消息,例如 404 代码未找到,200 代码正常。
c# - 像在 WebOperationContext 中一样在模拟 WebOperationContext 中执行 CreateTextResponse(...)
我在单元测试的包装器上模拟 WebOperationContext 类(使用 Moq)。但是我需要在我的模拟上下文中执行来自 WebOperationContext 类的 CreateTextResponse(...) 方法以生成消息。你能给我任何建议吗?
编辑:下面是我用于 WebOperationContext 的当前模拟。但是,我无法实现 CreateTextResponse/CreateStreamResponse。
wcf - WebOperationContext 在静态函数中可用吗?
我有一个 RESTful WCF 服务,它有一个服务方法,比如 BeginX()
在 BeginX 内部,我在一个静态帮助器类中调用我的静态 Validate 函数。在静态 Validate 方法中,我可以调用 WebOperationContext.Current.OutgoingResponse.StatusCode = blah 吗?
从我的服务中的静态方法内部调用当前上下文时,预期的行为是什么?
(我尝试对其进行原型设计,但当我尝试从控制台应用程序中运行的进程内 WCF 服务中获取 WebOperationContext 时,我似乎无法获取它)
moq - 模拟 WebOperationContext
我正在使用WCFMock在我的 Web 服务中模拟 WebOperationContext。唯一的用途是将自定义 HTTP 标头添加到 WebOperationContext.Current.OutgoingResponse.Headers 集合。我无法使用 Moq 验证这一点。我已经尝试过的:
- 验证是否调用了 Add 方法。这失败了,因为 Add 不是虚拟的
- 尝试直接从 MockedWebOperationContext.Current 访问标头。这在数量上始终为零
如何在我的单元测试用例中验证是否添加了自定义标头?
wcf - 使用 Nunit 测试 WCF 方法,但 WebOperationContext 为空
使用 NUnit 测试方法时,如何解决 WCF 服务方法中 WebOperationContext 为空的问题
我有一个单元测试项目,使用 NUnit 来测试 WCF 方法返回的数据:
然后我有一个测试方法如下
但是我在测试期间遇到错误
关于 SampleService 方法中的 WebOperationContext。
c# - 模拟 WebOperationContext.IncomingRequest
我需要模拟 WebOperationContext ,特别是 IncomingRequest ,它带有一个分配 Accept 值的标头,以测试该值是否被正确读取并且 OutgoingReponse.ContentType 与所需格式匹配。我正在使用 WCFMock 并且在一般测试中一切都很好,但我无法理解我需要做什么来模拟传入响应。
Accept 属性是只读的,因此不能直接分配。我已经尝试将 setter 添加到 WCFMock.IncomingWebRequestContextWrapper ,因为它继承自 System.SericeModel.Web.IncomingWebRequestContext ,所以它可以预见会爆炸。
所以需要这样的东西
}
恐怕我必须完全模拟 WebRequest,如果可能的话,我希望避免这种情况。