我正在使用ASP.NET开发一个网站。我有一个用户可以放置广告的页面。因此,在用户填写必填字段后,我将其重定向到另一个页面进行审核。在该页面中,我暂时显示用户输入的内容。所以,如果他们错了,他们可以回去,否则可以确认。 所以我避免使用会话将数据传递到另一个页面,因为它对服务器有成本。这些数据也不重要。 所以我把它们放在一个Json字符串中并发布它们。
这是我尝试过的。
JavaScriptSerializer json = new JavaScriptSerializer();
Ad = new AdDetails.Ad();
Ad.ContinentIdRef = byte.Parse(ddContinent.SelectedValue);
Ad.ContinentName = ddContinent.SelectedItem.Text;
Ad.CountryIdRef = byte.Parse(ddCountry.SelectedValue);
Ad.CountryName = ddCountry.SelectedItem.Text;
Ad.CityIdRef = UInt16.Parse(ddCity.SelectedValue);
Ad.CityName = ddCity.SelectedItem.Text;
//......
string jsonString = json.Serialize(Ad);
我的按钮代码是
<asp:Button ID="btnCheckAd" runat="server" UseSubmitBehavior="false" Text="Check My Add" CssClass="btn btn-success" Width="130" OnClick="btnCheckAd_Click" PostBackUrl="~/CheckAd.aspx" />
所以现在我想从CheckAd.aspx中检索这个Json字符串并读取这些值来设置标签和文本框值。那怎么办?
答案 0 :(得分:0)
试试这样:
Request.InputStream.Position = 0;
System.Text.Encoding encoding = Request.ContentEncoding;
using (var inputStream = new StreamReader(Request.InputStream,encoding))
{
strJSON = inputStream.ReadToEnd();
}
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
object serJsonDetails = javaScriptSerializer.Deserialize(strJSON, typeof(object));