[英]How to read postdata in a ashx webHandler ASP.NET 3.5
我試圖在ashx webhandler中訪問post數據,在MVC項目中我使用Newtonsoft.Json來實現這一點。
Dictionary<string, string> postData = JsonConvert.DeserializeObject<Dictionary<string, string>>(data);
這導致了一個字典,我可以訪問帖子數據
if (postData.ContainsKey("myKey"))
{
someVar = postData["myKey"];
}
在另一個項目ASP.NET 3.5我似乎沒有可用的Newtonsoft,我嘗試使用:
object postData = new JavaScriptSerializer().DeserializeObject(data);
這個方法應該返回一個對象圖,它似乎工作正常,如果我在visual studio中查看調試器,我可以看到我發布的數據:
如果輸入postData,如何訪問此對象中的數據? 我得到的唯一選項是:Equals,GetHashCode,GetType和ToString
我試過postData [0] .value;
但這會產生錯誤:無法應用索引。
嘗試使用自定義類型而不是對象,看看它是否有效
public class yourKeyvalue
{
public string _Key{ get; set; }
public string _value{ get; set; }
}
var postData = new JavaScriptSerializer().Deserialize<yourKeyvalue>(data);
var Key = postData._Key
var Value = postData._value
DeserializeObject
輸出一個字典,所以你應該能夠這樣做:
var postData = new JavaScriptSerializer().DeserializeObject(data) as Dictionary<string, object>;
var filename = postData["file"];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.