簡體   English   中英

頁面無法重定向

[英]Page unable to redirect

public partial class Order : System.Web.UI.Page
{
    private Product SelectedProduct;
    protected void Page_Load(object sender, System.EventArgs e)
    {
        if (!IsPostBack)
        {
            ddlProducts.DataBind();
        }
        SelectedProduct = this.GetSelectedProduct();
        lblName.Text = SelectedProduct.Name;
        lblShortDescription.Text = SelectedProduct.ShortDescription;
        lblLongDescription.Text = SelectedProduct.LongDescription;
        lblUnitPrice.Text = (SelectedProduct.UnitPrice).ToString("C");
        imgProduct.ImageUrl = "Images/Products/" + SelectedProduct.ImageFile;
    }

    private Product GetSelectedProduct()
    {
        DataView dvProduct = (DataView)AccessDataSource1.Select(DataSourceSelectArguments.Empty);
        dvProduct.RowFilter = "ProductID = '" + ddlProducts.SelectedValue + "'";
        Product Product = new Product();
        Product.ProductID = dvProduct[0]["ProductID"].ToString();
        Product.ProductID = dvProduct[0]["ProductID"].ToString();
        Product.Name = dvProduct[0]["Name"].ToString();
        Product.ShortDescription = dvProduct[0]["ShortDescription"].ToString();
        Product.LongDescription = dvProduct[0]["LongDescription"].ToString();
        Product.UnitPrice = (decimal)dvProduct[0]["UnitPrice"];
        Product.ImageFile = dvProduct[0]["ImageFile"].ToString();
        return Product;
    }

    protected void btnAdd_Click(object sender, System.EventArgs e)
    {
        if (Page.IsValid)
        {
            CartItem CartItem = new CartItem();
            CartItem.Product = SelectedProduct;
            CartItem.Quantity = Convert.ToInt32(txtQuantity.Text);
            this.AddToCart(CartItem);
            Response.Redirect("Cart.aspx");
        }
    }

    private void AddToCart(CartItem CartItem)
    {
        SortedList Cart = GetCart();
        string sProductID = SelectedProduct.ProductID;
        if (Cart.ContainsKey(sProductID))
        {
            CartItem = (CartItem)Cart[sProductID];
            CartItem.Quantity += Convert.ToInt32(txtQuantity.Text);
        }
        else
        {
            Cart.Add(sProductID, CartItem);
        }
    }

    private SortedList GetCart()
    {
        if (Session["Cart"] == null)
        {
            Session.Add("Cart", new SortedList());
        }
        return (SortedList)Session["Cart"];
    }
}

當我點擊添加按鈕時,它不會重定向到我擁有的另一個aspx頁面,即Cart.aspx。 我認為問題出在這段代碼中。

protected void btnAdd_Click(object sender, System.EventArgs e)
{
    if (Page.IsValid)
    {
        CartItem CartItem = new CartItem();
        CartItem.Product = SelectedProduct;
        CartItem.Quantity = Convert.ToInt32(txtQuantity.Text);
        this.AddToCart(CartItem);
        Response.Redirect("Cart.aspx");
    }
}

這不是啟用重定向的選項,因為我可以通過該頁面上的另一個按鈕導航到cart.aspx頁面,盡管該頁面使用回發URL硬編碼為aspx按鈕本身。

看來您的代碼是正確的。

確保您的頁面位於同一目錄中。 如果它不在以下示例中提到的使用該目錄的目錄中:

Response.Redirect("[Directory Name]/DrugEntry.aspx",true);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM