C# アプリケーションから、作成された ASP.NET MVC Web API に値を渡しています。次のように、値に「\」が含まれていることを学びました。
{ id:"1", path:"D:\Backup\DataSource\MyFile.txt", name:"test" }
MyAction のパラメーターが null であること。
[HttpPost]
public CustomResponse MyAction(CustomEntity entity)
{
... // do stuff
}
public class CustomEntity
{
public string id { get; set; }
public string path { get; set; }
public string name { get; set; }
}
パスに「\」が含まれていない場合、すべてが意図したとおりに機能します。これはある種のエンコーディングの問題だと思います。ただし、C# アプリから Web API に値を送信する前に、どの種類のエンコードを使用する必要があるかわかりません。
どのようなエンコーディングを使用する必要がありますか?