「TestController」という名前の非常に単純な C# APIController があり、API メソッドは次のとおりです。
[HttpPost]
public string HelloWorld([FromBody] Testing t)
{
return t.Name + " " + t.LastName;
}
Contact は、次のような単なるクラスです。
public class Testing
{
[Required]
public string Name;
[Required]
public string LastName;
}
私の APIRouter は次のようになります。
config.Routes.MapHttpRoute(
name: "TestApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
質問 1 :
C# クライアントからどのようにテストできますか?
#2については、次のコードを試しました:
private async Task TestAPI()
{
var pairs = new List<KeyValuePair<string, string>>
{
new KeyValuePair<string, string>("Name", "Happy"),
new KeyValuePair<string, string>("LastName", "Developer")
};
var content = new FormUrlEncodedContent(pairs);
var client = new HttpClient();
client.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
var result = await client.PostAsync(
new Uri("http://localhost:3471/api/test/helloworld",
UriKind.Absolute), content);
lblTestAPI.Text = result.ToString();
}
質問 2 :
Fiddler からこれをテストするにはどうすればよいですか?
UI 経由でクラスを渡す方法が見つからないようです。