C# 要向用户发送相同的随机数';s存储在数据库中的邮件
我正在开发一个web应用程序,其中我有一个查询表单,在该表单中我生成一个随机数并将其存储在数据库中。我的代码看起来像C# 要向用户发送相同的随机数';s存储在数据库中的邮件,c#,asp.net,C#,Asp.net,我正在开发一个web应用程序,其中我有一个查询表单,在该表单中我生成一个随机数并将其存储在数据库中。我的代码看起来像 clsInquiry objInquiry = new clsInquiry(); try { cn.Open(); objInquiry.RandomStr = GetUniqueKey(10); MailMessage mail = new MailMessage(); mail.
clsInquiry objInquiry = new clsInquiry();
try
{
cn.Open();
objInquiry.RandomStr = GetUniqueKey(10);
MailMessage mail = new MailMessage();
mail.From = new MailAddress("abc@gmail.com");
mail.To.Add(txt_eid.Text);
mail.Body += "Thank u for putting inquiry for " + productName + " ;<br><br>";
mail.Body += "Please Click on Following Link To Download Your Demo" + "<br><br>";
mail.Body += "<a href=\"http://www.xyz.co.in/Download.aspx?No='" + GetUniqueKey(10) + "'\">Demo Download</a>";
//mail.Body += "<a href=\"" + MyUrl + "\">Demo Download</a>";
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.Port = 587;
smtp.EnableSsl = true;
smtp.Credentials = new System.Net.NetworkCredential("abc@gmail.com ", "****");
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
smtp.Send(mail);
}
catch (Exception ex)
{
ex.ToString();
}
我已经成功地生成了号码并将其存储在数据库中
但是在我调用随机数函数发送给用户的
mail.body
中hyperlink
的url
中,生成了不同的随机数。。我希望两个位置都有相同的随机数。我该怎么办?将生成的随机值存储在变量中,并在两个位置使用它(objInquiry.RandomStr
和mail.Body
)
var randomstr=GetUniqueKey(10);
objInquiry.RandomStr=RandomStr;
...
mail.Body+=“”;
这是因为您两次调用GetUniqueKey(10)方法。它将始终返回不同的唯一密钥
在变量中获取GetUniqueKey(10)方法的输出,并在两个位置使用该变量 生成数字并将值放入变量中。仅使用此变量引用生成的随机数。换句话说,您应该引用
objInquiry.RandomStr
,而不是通过调用您的方法生成新的号码。
public static string GetUniqueKey(int maxSize)
{
//code for it
}
var randomstr = GetUniqueKey(10);
objInquiry.RandomStr = randomstr;
...
mail.Body += "<a href=\"http://www.xyz.co.in/Download.aspx?No='" + randomstr + "'\">Demo Download</a>";