2016-10-31 3 views
0

das Problem, das ich entwickelte eine einfache Web-App, die Abrufen und Anzeigen von Daten aus einer entfernten Datenbank hat ähnliche Beiträge darüber, aber nicht ganz das Gleiche, ich ging durch sie und ich keine Lösung tatsächlich half mir, so Das Problem ist das folgende, wenn ich meine Seite debuggen, warte ich eine Weile und ich bin zurückgeleitet zu meinem Projekt in Visual Studio mit einem Dialogfeld mit dem Titel SqlException wurde von Benutzercode nicht behandelt die Nachricht lautet:Unbehandelt SqlException Build Problem

An exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll but was not handled in user code

Additional information: Une connexion a été établie avec le serveur, mais une erreur s'est ensuite produite pendant la négociation préalable à l'ouverture de session. (provider: TCP Provider, error: 0 - Une connexion existante a dû être fermée par l’hôte distant.)


Die allgemeine Troubleshooting-Tipps didn ‚T helfen, hier ist meine aspx-Code:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Mail.aspx.cs" Inherits="CCIT_WebApp1.Mail" %> 
 

 
<!DOCTYPE html> 
 

 
<html xmlns="http://www.w3.org/1999/xhtml"> 
 
<head runat="server"> 
 
    <title></title> 
 
</head> 
 
<body style="height: 470px"> 
 

 
<table runat="server"> 
 
    
 
<asp:Repeater ID="repeater" runat="server"> 
 
    <HeaderTemplate> 
 
     <tr class="Header"> 
 
      <td>Code</td> 
 
     </tr> 
 
    </HeaderTemplate> 
 
    <ItemTemplate> 
 
     <tr> 
 
      <td> 
 
       <%# Eval("code") %> 
 
      </td> 
 
     </tr> 
 
    </ItemTemplate> 
 
    
 
</asp:Repeater> 
 
</table>


und das ist mein Backend aspx.cs Code:

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

namespace WebApp1 
{ 
    public partial class Mail : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 

      using (SqlConnection cnct = new SqlConnection("Server=x;User"+ 
       "ID=xx;Password=xxxx;Database=xxxx")) 
      { 

       cnct.Open(); 

       using (SqlCommand cmd = new SqlCommand("SELECT Code "+ 
       "FROM Societe", cnct)) 
       { 

        SqlDataReader rdr = cmd.ExecuteReader(); 


        while (rdr.Read()) 
        { 
         string code = rdr.GetString(1); 

        } 

       } 
      } 
     } 
    } 
} 

Antwort

0

Original- Dies ist wahrscheinlich Ihr Problem:

using (SqlCommand cmd = new SqlCommand("SELECT Code"+ 
       "FROM Societe", cnct)) 

Sie benötigen ein Leerzeichen zwischen Code und FROM. Sollte sein: SELECT Code From Societe

Zweite

Versuchen würde ich vorschlagen, Ihre Ausführung des Datenleser in einem try/catch-Block wickeln. Debuggen Sie, was in der Exception passiert, um zu sehen, ob Sie weitere aussagekräftige Informationen erhalten. So etwas wie dies ...

`

DataSet ds = new DataSet(); 
using (SqlConnection sqlConn = new SqlConnection(sqlConnection)) 
{ 
    using (SqlCommand cmd = new SqlCommand("SELECT Code From Societe", sqlConn)) 
    { 
     try 
     { 
      cmd.CommandType = CommandType.Text; 
      sqlConn.Open(); 
      SqlDataAdapter dap = new SqlDataAdapter(cmd); 
      dap.Fill(ds); 
     } 
     catch (Exception ex) 
     { 
      **Do something here ** 
     } 
    } 
}` 
+0

gibt es einen Platz dort, ich bin nur neu zu formatieren Gon Stack overflow und ich missremoved den Raum, ich werde es bearbeiten, sonst ist das Problem immer noch hartnäckig –

+0

Ich aktualisierte meine Antwort – BenM

+0

ja ich bemerkte, werde versuchen, dass –

0

In denselben Fällen I Test zuvor SQL-Abfrage. Schlagen Sie vor, Abfrage SELECT Code von Societe auf Datenbank auszuführen, um orriginal Fehler zu behandeln. Probobly Tabelle oder Spalte Name mit Fehler eingegeben, oder etwas Selbes