C#在Restful API中接受图像作为HttpPostedFile

C#在Restful API中接受图像作为HttpPostedFile,c#,asp.net,rest,post,fiddler,C#,Asp.net,Rest,Post,Fiddler,我正在用C#构建一个rest api—我正在设置一些POST—以下是接口: [SecurityTokenValidator("Registered Users")] [OperationContract] [WebInvoke(ResponseFormat = WebMessageFormat.Xml, RequestFormat = WebMessageFormat.Xml, UriTemplate = "camps/{campid}/markings/{token}"

我正在用C#构建一个rest api—我正在设置一些POST—以下是接口:

    [SecurityTokenValidator("Registered Users")]
    [OperationContract]
    [WebInvoke(ResponseFormat = WebMessageFormat.Xml, RequestFormat = WebMessageFormat.Xml, UriTemplate = "camps/{campid}/markings/{token}", Method = "POST")]
    MarkingDto InsertMarking(string campid, string token, MarkingDto markingDto);
这是我的标记

[DataContract(Namespace = "FreeBeer")]
public class MarkingDto
{
    [DataMember] public int Id;
    [DataMember] public decimal Latitude;
    [DataMember] public decimal Longitude;
    [DataMember] public string MarkingType;
    [DataMember] public DateTime DateTime;
}
在Fiddler中建立一个测试帖子时——我注意到如果我的RequestBody不是按字母顺序排列的——一些条目会显示为null或零。例如,如果请求主体是这样的-经度在纬度之前-纬度将是零(0)


456
123
刮

但如果按字母顺序排列,一切都在那里。这只是小提琴手的事吗?或者这是因为我缺少一个简单的解决方案而需要解决的问题;)

在WCF中,除非在DataMember上指定顺序,否则成员属性必须按字母顺序发送

看看这个问题的答案吧

更多信息可以在这里找到

msdn.microsoft.com/en-us/library/ms729813.aspx


谢谢

谢谢你澄清这一点,就像@Robert Harvey提出的另一个SO问题一样,这类问题让程序员想掐死某人
<MarkingDto xmlns="BigGameLogic">
<Longitude>456</Longitude>
<Latitude>123</Latitude>
<MarkingType>Scrape</MarkingType>
</MarkingDto>