草庐IT

http-types

全部标签

c# - 如何使 .net HttpClient 使用 http 2.0?

我有一个托管在IIS10(WindowsServer2016)上的asp.netWebAPI。当我从MicrosoftEdge浏览器对此发出GET请求时,我看到IIS日志中使用了HTTP2.02015-09-2021:57:59100.76.48.17GET/RestController/Native-443-73.181.195.76HTTP/2.0Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/42.0.2311.135+Safari/537.36+Edg

c# - 在 .NET 的 HTTP 请求中传递数组值

在.NET的HTTP请求中传递和处理数组的标准方法是什么?我有一个解决方案,但我不知道这是否是最佳方法。这是我的解决方案:ASHX处理程序接收以逗号分隔的字符串形式的“用户”参数。您可以通过拆分字符串轻松获取值:publicvoidProcessRequest(HttpContextcontext){string[]users=context.Request.Form["user"].Split(',');}因此,我的问题已经有了答案:将多个值分配给相同的参数名称,假设ASHX处理程序接收它作为逗号分隔的字符串,然后拆分字符串。我的问题是这是否是.NET中通常的做法。这方面的标准做法是

c# - LINQ to Entities Group By 表达式给出 'Anonymous type projection initializer should be simple name or member access expression'

我在这个表达式中遇到了上述错误:varaggregate=fromtinentities.TraceLinesjoinminentities.MethodNames.Where("it.NameLIKE@searchTerm",newObjectParameter("searchTerm",searchTerm))ont.MethodHashequalsm.MethodHashwhere(t.CallTypeId&(int)types)==t.CallTypeId&&t.UserSessionProcessId==m_SessionIdgrouptbym.Nameintodselect

c# - 检查 System.Type 是否是给定类的后代的最佳方法

考虑以下代码:publicclassA{}publicclassB:A{}publicclassC:B{}classD{publicstaticboolIsDescendantOf(thisSystem.TypethisType,System.TypethatType){///???}voidMain(){AcValue=newC();C.GetType().IsDescendantOf(cValue.GetType());}}实现IsDescendantOf的最佳方法是什么? 最佳答案 Type.IsSubclassOf()判断当

c# - 在商店应用程序中通过 HTTP POST 发送字节数组

我正在尝试通过HTTPpost从Windows应用商店应用程序向服务器发送一些图像+一些元数据,但在尝试将数据实际包含在post中时卡住了。由于商店应用程序API的更改,无法像在Windows窗体应用程序或类似应用程序中那样完成此操作。我得到了错误。cannotconvertsourcetypebyte[]totargettypeSystem.Net.Http.httpContent现在这显然是因为它有2种不同的类型不能隐式转换,但这基本上是我希望能够做到的。如何将我的字节数组数据放入httpContent类型,以便我可以将其包含在以下调用中httpClient.PostAsync(U

c# - T4代码生成: access types in current project

使用T4代码生成,是否可以访问当前项目中定义的类型?例如,如果我有一个接口(interface)并且我想将它的实现委托(delegate)给另一个类,即interfaceIDoSomething{publicvoiddo_something();}classDoSomethingImpl:IDoSomething{publicvoiddo_something(){//implementation...}}classSomeClass:IDoSomething{IDoSomethingm_doSomething=newDoSomethingImpl();//forwardcallstoi

c# - 服务器无法在发送上传文件的 HTTP header 后附加 header

我在我的asp.netmvc5c#web应用程序中间歇性地遇到这个异常:ServercannotappendheaderafterHTTPheadershavebeensent.它只是碰巧将图像上传到S3方法(WebApiController)。Global.asax中的presendrequestheadersprotectedvoidApplication_PreSendRequestHeaders(objectsender,EventArgse){HttpApplicationapp=senderasHttpApplication;if(app!=null&&app.Contex

c# - HTTP 发布到 Web API 2 - 选项请求已收到并已处理未收到进一步的请求

我有一个使用MVC和AngularJS的Web应用程序,它连接到我在一个单独的项目中设置的WebAPI2api。目前我可以毫无问题地从Api检索信息。然而,当我尝试做一个HTTPPost时,我没有得到任何响应,最初我遇到了飞行前请求失败的问题,我现在已经在我的Controller中处理了这个问题,但是它在之后没有发送正确的请求它收到了一条OK消息。我已经在API中包含了Angular工厂和C#Controller的代码。[EnableCors(origins:"*",headers:"*",methods:"*")]publicclassRegisterController:ApiCo

c# - 在 C# 中实现安全的鸭子类型(duck typing)

看了之后如何Go处理接口(interface)并喜欢它,我开始考虑如何在C#中实现类似的duck-typing,如下所示:varmallard=newMallard();//doesn'timplementIDuckbuthastherightmethodsIDuckduck=DuckTyper.Adapt(mallard);DuckTyper.Adapt方法将使用System.Reflection.Emit动态构建适配器。也许有人已经写过这样的东西。我想这与模拟框架已经做的并没有太大不同。但是,如果Mallard实际上没有正确的IDuck方法,这将在运行时抛出异常。为了在编译时尽早发

c# - 使用 RestSharp 时如何惯用地处理 HTTP 错误代码?

我正在使用RestSharp构建一个HTTPAPI客户端,我注意到当服务器返回HTTP错误代码(401未授权、404未找到、500内部服务器错误等)时,RestClient.Execute()不会抛出异常-相反我得到一个有效的RestResponse空.Data属性(property)。我不想在我的API客户端中手动检查每个可能的HTTP错误代码-RestSharp是否提供了将这些错误传递到我的客户端应用程序的更好方法?再详细一点。RestSharp公开了一个Response.ErrorException属性-如果RestClient.Execute()调用会导致任何异常,它将通过Er