0

在我的 Web 应用程序中,我们展示了一些我们开发的产品演示,并且我已将产品详细信息存储在数据库中,例如

tblProduct{Id,ProductName,ProductDescription}

现在假设用户单击产品 A 的下载链接,因此该页面的超链接我已经传递了类似演示下载的查询字符串,因此它将重定向到 ProductName 为 A 的查询表单,并且我已经使用代码检索了该查询页面上的查询字符串值

 string productName = Request.QueryString["ProductName"] as string;
 objInquiry.InquiryFor = productName; 

现在,无论何时用户按下提交按钮在该查询表单上,一个链接都应该发送到他的电子邮件 ID,该链接适用于特定的 ProductOnly....现在在提交按钮的代码上,我已经像 mail.Body += "<a href=\"http://www.abc.co.in/test.aspx?period=" + DateTime.Now + "&ProductName=[]\">Download Demo Software</a>";现在一样制作了查询字符串,我的问题是如何通过这个产品名称意味着 ProductName 是 A 所以我怎么能通过这个以及如何在 test.aspx 页面上检索这个..???请帮助我

4

2 回答 2

0

我不太明白这个问题,但在我看来,你有 3 页。

  • 第 1 页,您有下载产品 A 的超链接
  • 第 2 页有一个提交按钮(我想还有一个表格)。在这个页面代码后面你有:string productName = Request.QueryString["ProductName"] as string;。因此,您可以在表单中创建一个隐藏字段并添加 ProductName。
  • 第 3 页,您现在可以使用 ProductName 访问Request.Form["ProductName"] as string;并将值添加到电子邮件正文。

正如我在评论中提到的,我建议您使用 ID,而不是 ProductName。

于 2013-04-10T09:03:42.673 回答
0

您可以像这样传递产品名称:

mail.Body += string.Format("<a href=\"http:\//www.abc.co.in/test.aspx?period={0}&ProductName={1}\">Download Demo Software</a>", DateTime.Now, productName);

正常检索它test.aspx

string productName = Request.QueryString["ProductName"] as string;

关于您对文件下载的评论,假设您的产品具有与之关联的文件名字段:-

string productName = Request.QueryString["ProductName"];
Product product = GetProductFromDB(productName);//I don't know what your DB access code looks like

//Build download link in markup:
<asp:HyperLink ID="lnkFileDownload" runat="server" />

//Link code
lnkFile.NavigateUrl = string.Format("/FILE DOWNLOAD LOCATION/{0}/", product.FileName)
lnkFile.Text = "Download Demo Software";
于 2013-04-10T09:05:10.467 回答