を使用してGet
呼び出しを行っています。 URL
には、underscore
というオプションのパラメータがあります。 DataContract
を使用してこれらの値をclass
に割り当てる必要がありますが、できません。私がそれらを別々に読んだら問題はありません。Web APIのオプションパラメータのマップC#
これは私にとって初めてのことであり、これを実行する最良の方法を模索しています。個別のパラメータのための提案が、ここで何も欠けていないことを確認したいと思っているリンクを見つけました。
コール:http://{{url}}/Host?host_name=Test&host_zipcode=123&host_id=123
ワーキング:私は、個々のパラメータとしてそれらを読めば、私はこれらのパラメータ値を読み取ることができます。
[HttpGet]
[Route("api/Host")]
public async Task<HostResponse> GetHostInfo([FromUri (Name = "host_name")] string hostName, [FromUri (Name = "host_zipcode")] string hostZipCode, [FromUri(Name = "host_id")] string hostId)
{
}
動作しない:私はDataContract
を使用してclass
を使用しようとすると、私はそれを読むことができません。
[HttpGet]
[Route("api/Host")]
public async Task<HostResponse> GetHostInfo([FromUri] HostInfo hostInfo)
{
}
[DataContract]
public class HostInfo
{
[DataMember(Name = "host_name")]
public string HostName { get; set; }
[DataMember(Name = "host_zipcode")]
public string HostZipCode { get; set; }
[DataMember(Name = "host_id")]
public string HostId { get; set; }
}
私も試してみました:
public class DeliveryManagerStatus
{
[JsonProperty(PropertyName = "country")]
public string Country { get; set; }
[JsonProperty(PropertyName = "delivery_provider")]
public string DeliveryProvider { get; set; }
[JsonProperty(PropertyName = "job_id")]
public string JobId { get; set; }
}
私はクラスにこれらのプロパティを割り当てることができますどのように?
これは動作します。ありがとうございました。 – CSharper