Sql обновить текстовое поле не показывает информацию БД - PullRequest
1 голос
/ 30 марта 2012
using Visual.Web.Developer.2010.Express;
using SQL.Server.Management.Studio.2008.R2;


В конечном итоге я пытаюсь обновить базу данных sql ..
Я застрял на этом шаге ... У меня есть веб-страница для печати содержимого базы данных sqld в div. Прямо сейчас я пытаюсь поместить некоторый контент в текстовое поле. Но всякий раз, когда я отлаживаю, я получаю эту ошибку. The error I am getting
Застрял в этой части, пожалуйста, пролите немного света на мою ситуацию.
Кроме того ... Я иду правильно с этим? Есть ли более эффективный способ сделать это? Мнения и ссылки на хорошие учебники / пошаговые руководства также будут оценены! Заранее спасибо.

Мой HTML

<input runat="server" class="hexen" id="investigate1"/><br />
<input type="text" class="hexen" id="investigate2"/><br />
<input type="text" class="hexen" id="investigate3"/><br />
<input type="text" class="hexen" id="investigate4"/><br />
<input type="text" class="hexen" id="investigate5"/><br />
    <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />


My C #

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

namespace WebApplication1
{
    public partial class Default1 : System.Web.UI.Page
    {
        protected void SimpleRead(object sender, EventArgs e)
        {

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            SqlConnection conn = new SqlConnection("Data Source=AZUES-336\\JDOESQLSERVER;Initial Catalog=Northwind;Integrated Security=SSPI");
            SqlDataReader rdr = null;

            try
            {

                conn.Open();


                SqlCommand cmd = new SqlCommand("select * from Customers", conn);

                rdr = cmd.ExecuteReader();


                if (rdr.Read())
                {
                    investigate1.Text = rdr.GetValue(0).ToString;//Presumably where the error is happening
                }
            }

            finally
            {
                if (rdr != null)
                { rdr.Close(); }

                if (conn != null)
                { conn.Close(); }
            }
        }
    }
}







@ Seany84
Default.aspx

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
    CodeBehind="Default.aspx.cs" Inherits="WebApplication1.Default1" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

<script type="text/javascript">
    $(document).ready(function () {

        $('.hexen').after('<span class="ui-state-default ui-corner-all ui-icon-disk ui-icon saveButton" title="Save" style="float:left"></span>')// ui icon

    .keypress(function () {$(this).next('.saveButton').show();}); //adds ui icon

     $('.ui-state-default').hover(
     function () {$(this).addClass('ui-state-hover');},
     function () {$(this).removeClass('ui-state-hover');}
     ); //ui icon hover

        $('.saveButton').click(function () {
            var id = $(this).prev().attr('id'); //used in the "data" attribute of the ajax call
            var value = $(this).prev().val(); //used in the "data" attribute of the ajax call

            $.ajax({
                type: "POST",
                url: "Default.aspx",
                data: "{Id: " + id + ", Value: " + value + "}",
                dataType: "json",
                contentType: "application/json; charset=utf-8",
                success: function (data) {
                    console.log(data);
                }
            });
            $(this).hide();
        }); //runs ajax call and removes ui-icon after .saveButton is clicked

    }); //end .ready
</script> 

<input runat="server" class="hexen" id="investigate1"/><br />
<input type="text" class="hexen" id="investigate2"/><br />
<input type="text" class="hexen" id="investigate3"/><br />
<input type="text" class="hexen" id="investigate4"/><br />
<input type="text" class="hexen" id="investigate5"/><br />
    <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
</asp:Content>

Ответы [ 2 ]

2 голосов
/ 30 марта 2012

Вам необходимо использовать серверный элемент управления ASP вместо стандартного ввода HTML.

Замените

<input runat="server" class="hexen" id="investigate1"/>

на

<asp:TextBox ID="investigate1" runat="server" CssClass="hexen" />

и попробуйте затем.

Кроме того, следует строка:

investigate1.Text = rdr.GetValue(0).ToString;

будь таким:

investigate1.Text = rdr.GetValue(0).ToString();

http://www.asp.net есть хорошие учебники для веб-форм ASP.net, MVC и веб-страниц.

0 голосов
/ 30 марта 2012

Это свойство, которое вы должны использовать:

Свойство HtmlInputControl.Value

Входные данные HTML с атрибутом runat = "server" преобразуются в HtmlInputControl.И у них нет свойства Text, но есть свойство Value.Поэтому измените текст на значение.

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