クエリ文字列を使用する必要がないように、以下のコードを変更したいと考えています。私は2つの変数yesID
とnoID
を設定したいと思います。 default.aspx
から同じページdefault.aspx
にナビゲートしています。これは可能ですか?もしそうなら、どのように?クエリ文字列なしで同じページに変数を渡す
//get query string
if (Request.QueryString["yesId"] != null && Request.QueryString["noId"] != null)
{
int yesPictureId = Convert.ToInt32(Request.QueryString["yesId"]);
int noPictureId = Convert.ToInt32(Request.QueryString["noId"]);
//Set rated image Items to Visible
RatedImage.Visible = true;
HyperLink1.Visible = true;
RatedPicRating.Visible = true;
//pass ratings to database
Ratings PassRatings = new Ratings();
PassRatings.InsertRatings(yesPictureId, 1);
PassRatings.InsertRatings(noPictureId, 2);
//Get total yes and nos and Do Calculation
Ratings GetNoVotes = new Ratings();
int DATotalYesVotes = GetNoVotes.GetTotalNOVotes(1, yesPictureId);
int DaTNoVotes = GetNoVotes.GetTotalNOVotes(2, yesPictureId);
int DaTotalVotes = DATotalYesVotes + DaTNoVotes;
double Percentage = ((double)DATotalYesVotes/(double)DaTotalVotes) * 100;
//Round percentage
Percentage = Math.Round(Percentage, MidpointRounding.AwayFromZero);
//Insert New percentage
Picture UpdatePictureTating = new Picture();
UpdatePictureTating.UpdateRatings(yesPictureId, (int)Percentage);
//Create pictue object
Picture RatedPic = new Picture();
DataTable DARatedPicture = RatedPic.GetRatedPicByQueryString(yesPictureId);
//Assign Location and Rating to variables
foreach (DataRow row in DARatedPicture.Rows)
{
// firstRatedPicId = row["PicID"].ToString();
//secondNoPicId = firstYesPicId;
//holds member Id for profile link
int MemberID = (int)row["MemberID"];
RatedPicnameLabel.Text = row["MemberName"].ToString() + "'s profile";
HyperLink1.NavigateUrl = "Member.aspx?UserID=" + MemberID;
RatedPicRating.Text = "Banged Rating: " + row["PicRating"].ToString() + "%";
RatedImage.ImageUrl = "Pictures/" + row["PicLoc"];
RatedImage.PostBackUrl = "Member.aspx?UserID=" + MemberID;
}
}
else
{
//If we dont have any ratied pictures hide those elements
RatedImage.Visible = false;
HyperLink1.Visible = false;
RatedPicRating.Visible = false;
}
以下の変数を設定しています。私はしかし、クエリ文字列を使用したくない。
FirstPicLink.PostBackUrl = "default.aspx?yesId=" + firstYesPicId + "&noId=" + firstNoPicId;
SecondPicLink.PostBackUrl = "default.aspx?yesId=" + secondYesPicId + "&noId=" + secondNoPicId;
私はこのようなことを考えています。しかし、どうすればこれらの変数を保存できますか?ページがリロードされると失われません。
yesID = 1
NoID = 2
FirstPicLink.PostBackUrl = "default.aspx";
SecondPicLink.PostBackUrl = "default.aspx";