0

私はこの人と同じ問題を抱えています:

名前 'controlname' は現在のコンテキストに存在しません

しかし、さまざまな効果があります。

基本的に、片側にこれらすべてのラベルとフォームが含まれている Web ページを作成しています。コード ビハインドでこれらを参照して、電子メールを生成し、管理者にメールで送信します。

ここの多くの人は、回答はデザイナー ファイルを削除するか、[Web アプリケーションに変換] をクリックすると述べています。デザイナー ファイルがなく、変換オプションもありません。もう 1 つは、.aspx 側の html 部分に「runat」を配置することでした。それはありませんが、次のようなランナトを持つマスターページを継承します

<asp:ContentPlaceHolder runat="server" ID="EntireBody">

この例では、すべての「XXX.Text」部分がエラーになり、このコンテキストには存在しないことが示されています。

私はVisual StudioとWebサイトの作成に少し慣れていません。どうすればいいですか?

  public partial class SendEmail : System.Web.UI.Page
{
protected void Submit_Click(object sender, EventArgs e)
{
    MailMessage mailMsg = new MailMessage();

    mailMsg.From = new MailAddress(txtContactEmail.Text);

    mailMsg.To.Add("admin@email.com");

    mailMsg.IsBodyHtml = true;

    mailMsg.Subject = txtContractName.Text + " : " + txtCompanyName.Text + " : Software Enhancement";

    mailMsg.Body = "Contact Details" + "<b>Name:</b>" + txtCompanyName.Text + " <br/> <b>Email - address :</b>" + txtContactEmail.Text + "<br/> <b>Comments :</b>" + txtSoftwareVersion.Text;

    SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587);

    mailMsg.Priority = MailPriority.Normal;

    smtp.Credentials = new System.Net.NetworkCredential("admin@email.com", "yourPassword");

    smtp.Timeout = 25000;

    smtp.EnableSsl = true;

    smtp.Send(mailMsg);

    ThankYou.Text = "Thank you. Your contact details and feed back has been submitted.";


}

}

.aspx 側のマークアップ

<%@ Page Title="Customer Support" Language="C#" MasterPageFile="~/members.master" AutoEventWireup="true" CodeFile="SoftwareEnhancement.aspx.cs" Inherits="support" %>
4

0 に答える 0