页面无法重定向

时间:2014-08-26 01:45:04

标签: c# asp.net

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");
    }
}

它不会是一个启用重定向的chome设置,因为我能够通过此页面上的另一个按钮导航到cart.aspx页面,尽管它已经通过回发硬编码到aspx按钮本身URL。

1 个答案:

答案 0 :(得分:0)

您的代码似乎是正确的。

确保您的页面位于同一目录中。如果它不在下面示例中提到的使用它的同一目录中:

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