我在我的web api 2应用程序中添加了两个自定义消息处理程序,如下所示 https://docs.microsoft.com/en-us/aspnet/web-api/overview/advanced/http-message-handlers
然后在Register方法中注册它们,
config.MessageHandlers.Add(new LogHandler());
config.MessageHandlers.Add(new HeaderHandler());
Run Code Online (Sandbox Code Playgroud)
启动时出现此错误:
Method not found: 'System.Collections.ObjectModel.Collection`1
System.Web.Http.HttpConfiguration.get_MessageHandlers()'.
Run Code Online (Sandbox Code Playgroud) Just for learning purpose, I am logging all http requests to my Web API 2 application using a handler.
enum LogType {Information = 1, Warning = 2, Error = 3 }
public class LogHandler: DelegatingHandler
{
async protected override Task SendAsync(HttpRequestMessage httpRequest, CancellationToken cancellationToken)
{
Trace.WriteLine(httpRequest.ToString(), LogType.Information.ToString());
var response = await base.SendAsync(httpRequest, cancellationToken);
return response;
}
}
This just prints the Request Headers as follows:
Information: Method: POST, RequestUri: 'http://localhost:49964/school/title?number=1&name=swanand pangam', Version: 1.1, Content: System.Web.Http.WebHost.HttpControllerHandler+LazyStreamContent, Headers:
{
Cache-Control: no-cache
Connection: … 我正在学习Java,在学习try catch循环时,我遇到了这种奇怪的行为.
无论我向下面的代码提供什么数字,它返回49-53之间的东西.
public class demo{
public static void main(String[] args) {
System.out.println("Enter a number");
try{
int num = System.in.read();
System.out.println(num);
}catch(Exception e){
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud) 我对编译器错误CS0201的术语感到困惑.它说
只有赋值,调用,递增,递减和新对象表达式才能用作语句
所以除此之外的任何事情都不能成为一种说法.那么下面的行如何不会产生上述错误.
Anyclass obj;
Run Code Online (Sandbox Code Playgroud)
这里我们没有任何赋值或调用或递增或递减或新对象表达式.
我知道我遗漏了一些东西,因为官方文件与这个错误相矛盾,声明声明也是一个声明.
在Eclipse中练习Java数组时,我遇到了这种奇怪的数组行为.
public class base3 {
public static void main(String[] args) {
int arr[]= new int[25];
System.out.println(arr[0]);
//System.out.println(arr[25]);
System.out.println(arr[-10]);
}
}
Run Code Online (Sandbox Code Playgroud)
输出是:
0
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -10
at base3.main(base3.java:6)
Run Code Online (Sandbox Code Playgroud)
但是只要我将第三个sysout的索引从-10更改为-11,输出序列就会发生变化.
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -11
at base3.main(base3.java:6)
0
Run Code Online (Sandbox Code Playgroud)
那么为什么输出序列会随着数组索引而变化.