Имя [ControlName] отсутствует в текущем контексте с подключением к базе данных - PullRequest
0 голосов
/ 13 марта 2020

Я новичок в Visual Studio и пытаюсь пройтись по некоторым ASP .NET / C# учебникам по веб-формам. В своем коде я пытаюсь установить соединение с базой данных на нашем сервере SQL.

Visual Studio 2013 SQL Сервер 2012

В руководстве, которое я следую, рекомендуется настроить соединение с БД строка в Web.config:

<!-- Johns Connection String to the DB -->
  <connectionStrings>
      <add name="DBconnection" providerName="System.Data.SqlClient" connectionString="data source=TheServerName;initial catalog=TheDatabaseName;user id=TheUserName;password=ThePassword;" />
  </connectionStrings>
</configuration>

Страница с веб-интерфейсом - basi c. Я только хочу сказать, установил ли я соединение или нет. Вот CodeBehind:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Web.Configuration;

namespace CPITraining
{
    public partial class TestForm : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            var connectionFromConfiguration =     WebConfigurationManager.ConnectionStrings["DBConnection"];
            using (SqlConnection dbConnection = new     SqlConnection(connectionFromConfiguration.ConnectionString))
        {
                try
                { 
                    dbConnection.Open();
                    ltConnectionMessage.Text = "Connection Successful.";
                }
                catch (SqlException ex)
                {
                    ltConnectionMessage.Text = "Connection failed: " + ex.Message;
                }
                finally
                {
                    dbConnection.Close();
                    dbConnection.Dispose();
                }
            }
        }
    }
}

и, наконец, вот веб-страница:

<%@ Page Title="Colors Example" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="TestForm.aspx.cs" Inherits="CPITraining.TestForm" %>

<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
    <h2><%: Title %>.</h2>
    <h3>Your application description page.</h3>
    <p>Use this area to provide additional information.</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <asp:Literal ID="ltConnectionMessage" runat="server" />
    <div>
        <asp:Literal ID="ltOutput" runat="server" />
    </div>
</asp:Content>

Я продолжаю получать Имя 'ltConnectionMessage' не существует в текущем контексте '.

Не уверен, как обойти эту ошибку. Спасибо за любую помощь. John

1 Ответ

0 голосов
/ 19 марта 2020

Я нашел три лучших урока, которые вместе предоставляют метод построения звука для построения сетки в ASP. NET с C#. Я не уверен, уместно ли размещать учебники здесь. Я не хочу, чтобы казалось, что я скрываю информацию, но я также не хочу, чтобы она выглядела так, как будто я рекламирую учебники. Учебное пособие также никоим образом не относится к теме этой темы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...