-2

お問い合わせフォームが 1 つある Web アプリケーションを開発しており、そのフォームで乱数を 1 つ生成してデータベースに保存しています。私のコードは次のようになります

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

乱数の関数.....

public static string GetUniqueKey(int maxSize)
{
   //code for it

}

そして、番号を正常に生成してデータベースに保存しました..

しかし、url乱数関数を呼び出してユーザーhyperlinkmail.body送信すると、異なる乱数が生成されます..両方の場所で同じ乱数が必要です.どうすればよいですか?

4

2 に答える 2

2

生成されたランダム値を変数に格納し、それを両方の場所 (objInquiry.RandomStrmail.Body)で使用します。

var randomstr = GetUniqueKey(10);
objInquiry.RandomStr = randomstr;
        ...
mail.Body += "<a href=\"http://www.xyz.co.in/Download.aspx?No='" + randomstr + "'\">Demo Download</a>";
于 2013-04-12T12:00:35.887 に答える
0

これは、GetUniqueKey(10) メソッドを 2 回呼び出しているためです。常に異なる一意のキーが返されます。

変数で GetUniqueKey(10) メソッドの出力を取得し、その変数を両方の場所で使用します。

于 2013-04-12T12:04:30.517 に答える