gpt4 book ai didi

c# - 交叉发布时不显示目标 aspx 页面

转载 作者:太空宇宙 更新时间:2023-11-03 16:17:28 25 4
gpt4 key购买 nike

我是 ASP.NET 的新手。我正在试验网络表单。我有 2 个页面:NewOrder.aspx,它捕获用户的订单,然后交叉发布到 SaveOrder.aspx,我想在其中保存订单并向用户显示一些信息。

 <telerik:RadButton ID="BtnSubmirOrder" runat="server" ButtonType="StandardButton" AutoPostBack="true"
Text="Place order" PostBackUrl="SaveOrder.aspx">
</telerik:RadButton>

加载 SaveOrder.aspx 时,下面的代码设置其控件值并保存订单。但是浏览器停留在 NewOrder.aspx。

protected void Page_Load(object sender, EventArgs e)
{
if (PreviousPage==null || !PreviousPage.IsCrossPagePostBack)
Response.Redirect("~/Default.aspx");

var referencingPage = PreviousPage as NewOrder;
int id = Int32.Parse(referencingPage.SelectedPublicationId);


DateTime neededBy = referencingPage.SelectedOrderDate;

LblSummaryIsbn.Text = referencingPage.SelectedIsbn;
LblSummaryNbrCopies.Text = referencingPage.NbrOfOrderedCopies;
DateTime orderDate = DateTime.Now;
LblSummaryOrderDate.Text = orderDate.ToShortDateString();
LblSummaryTitle.Text = referencingPage.SelectedPublicationTitle;
int quantity = Int32.Parse(referencingPage.NbrOfOrderedCopies);
StockContainer _context = new StockContainer();
Order newOrder = Order.CreateOrder(orderDate, quantity, neededBy, id);
_context.Orders.AddObject(newOrder);
_context.SaveChanges();
}

我可以从 javascript 中看到,单击按钮时表单的操作设置为 SaveOrder.aspx,为什么浏览器不显示它?

最佳答案

我认为您的浏览器停留在 NewOrder.aspx 上的原因是您没有与按钮关联的按钮单击事件。没有看到您的其余代码,我不确定为什么表单的操作看起来不同。

您可以执行类似下面的操作来引入按钮单击事件。重定向逻辑可以放在那里。

标记:

<telerik:RadButton ID="btnSubmit" runat="server" Text="Place Order" 
OnClick="btnSubmit_Click" />

代码:

public class NameOfPage
{
protected void btnSubmit_Click(object sender, EventArgs e)
{
// You could do validation here and display an error message if something is not right.
// For simplicity I am assuming the data comes from a set of textboxes.
if (!PageIsValid())
{
return;
}

StockContainer _context = new StockContainer();
Order newOrder = Order.CreateOrder(txtOrderDate.Text, txtQuantity.Text, txtNeededBy.Text, id);
_context.Orders.AddObject(newOrder);
_context.SaveChanges();
// Add your redirect logic here.
}

private bool PageIsValid()
{
if (string.IsNullOrEmpty(txtOrderDate.Text))
{
return false;
}

if (string.IsNullOrEmpty(txtQuantity.Text))
{
return false;
}

// and so on for the other fields that are required.
return true;
}
}

关于c# - 交叉发布时不显示目标 aspx 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15359511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com