Avatar billede dresen Nybegynder
17. juli 2006 - 15:27 Der er 9 kommentarer

sqlconnection problem

Hej eksperter

Jeg forsøger mig med noget ADO.NET programmering. Er desværre nærmest gået i stå, før jeg er kommet i gang :(

Beklager at jeg skal spørge om dette igen, for jeg kan se mange andre allerede har kæmpet med samme problem - har imidlertid ikke selv kunnet finde en løsning.

Jeg forsøger mig med følgende kode:

aspx:

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <br />
        <br />
        &nbsp;</div>
        <br />
        &nbsp;<asp:TextBox ID="TextBox1" runat="server" Height="188px" Width="605px"></asp:TextBox>
        <br />
        <br />
        <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /><br />
    </form>
</body>
</html>


aspx.cs:

using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

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

    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        // opret connection til SQLServer
        SqlConnection con = new SqlConnection("server=atomnote;Integrated Security=SSPI;database=KundeKartotek");
        con.Open();

        // lav SQL query og få resultatet som en data reader
        SqlCommand cmd = new SqlCommand("SELECT * FROM Firma", con);
        SqlDataReader rdr = cmd.ExecuteReader();
        // så længe der er flere rækker i databasen
        while(rdr.Read()) {

            Console.WriteLine("test");
            /*
            // f1 = første kolonne (som i dette tilfælde er en int)
            int f1 = (int)rdr[0];
            // f2 = anden kolonne (som i dette tilfælde er en string)=
            string f2 = (string)rdr[1];
            // udskriv det vi har fundet
            Console.WriteLine(f1 + " " + f2);
            */

        }
        con.Close();
    }
   
}

Jeg får følgende fejl:

to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

Ideen er, at der connectes til databasen og udskrives tekst når der trykkes på knappen.

på forhånd tak!

/a
Avatar billede arne_v Ekspert
17. juli 2006 - 15:32 #1
det er ikke noedvendigvis en fejl i din kode

din kode kan ikke connecte til SQLServeren

det kan skyldes at firewall blokerer eller at SQLServeren ikk eer konfigureret til connections
fra andre maskiner eller diverse andre ting
Avatar billede dresen Nybegynder
17. juli 2006 - 15:36 #2
Hej arne_v

Rart at have fat i dig :)

Jeg er efterhånden kongeligt forvirret af alle de nye ting jeg har set på samtidigt.

Databasen er placeret i App_data folderen - har dette betydning.

Hvordan kan jeg komme videre?
Avatar billede dresen Nybegynder
17. juli 2006 - 15:59 #3
hmm ....  er fejlen i virkeligheden brugen af app_data mappen?

Er det dårlig stil at placere sin base heri?
Avatar billede arne_v Ekspert
17. juli 2006 - 16:03 #4
jeg har aldrig connectet til en DB der

jeg vil tro at du skal angive MDF filens placering med en

AttachDbFilename

i connection string
Avatar billede lateralus Nybegynder
20. juli 2006 - 08:52 #5
Jeg har selv haft ovenstående fejl. I mit tilfælde skyldtes det (som fejlbeskeden også angiver) at SQL Server 2005 som standard ikke tillader remote connections. Det kan ændres ved at gå ind i Start -> Programs -> SQL Server 2005 -> Configuration Tools -> SQL Server Surface Area Configuration, vælg Remote Connections under MSSQLSERVER -> Database engine og sæt hak i "local and remote connections"
Avatar billede arriva Nybegynder
22. juli 2006 - 01:32 #6
I din connection string har du "Integrated Security=SSPI", men har du husket at tilføje en bruger af databasen på din sqlserver 2k5 ?
Avatar billede arne_v Ekspert
11. september 2006 - 23:57 #7
dresen>

Kommet videre ?
Avatar billede dresen Nybegynder
29. marts 2007 - 20:59 #8
Hej Arne

Tak for hjælpen i sin tid.

Jeg har været væk fra eksperten i alt for lang tid, og nu indser jeg, at der er flere tråde, som jeg ikke har fået lukket. Undskyld.

Smid et svar.

vh/ dresen
Avatar billede arne_v Ekspert
30. marts 2007 - 02:30 #9
jeg melder pas her - jeg synes ikke at jeg har bidraget med noget point værdigt her
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester