Avatar billede loonie Nybegynder
04. juni 2010 - 20:00 Der er 12 kommentarer og
1 løsning

Opret connectionstring til SQL2005 i vb.net?

Hej!
Jeg har problem med at oprette forbindelse til sql server 2005 i vb.net, til brug på en webside, og ønsker bare at se en standardløsning på hvordan den kan opbygges!

Jeg har forsøgt at bruge noget fra et svar her på sitet, men løber ind i fejlmeddelser som:
"ASPNET: Make sure that the class defined in this code file matches the 'inherits' attribute, and that it extends the correct base class (e.g. Page or UserControl)."

Jeg mangler forståelse for hvad jeg skal sætte i programmeringen i starten, dvs. hvad skal inkluderes osv. Jeg har opfattet at man arbejder med en aspx side og aspx.vb side til koden. Jeg mangler bare at komme videre!

Kodeeksempel:
      Imports System.Data.OleDb
        Public MyCon As OleDbConnection

        Try
            'Data Source=WIN-8YDYI87C83F;Initial Catalog=EIS30Remote;User ID=sa;Password=Halden;Packet Size=512
            MyCon = New OleDbConnection("provider=SqlOleDB; SERVER=WIN-8YDYI87C83F; UID=sa; PWD=Halden; DATABASE=EIS30Local")
            If MyCon.State = ConnectionState.Closed Then
                MyCon.Open()
            End If
        Catch e As Exception
            MsgBox("Connection to server failed.. No response", MsgBoxStyle.Critical)
            Err.Clear()
            End
        End Try

        Dim DbRead As OleDbDataReader
        Dim DbCmd As OleDbCommand
        Try
            DbCmd = New OleDbCommand("Select * From Dintabel", MyCon)
            DbRead = DbCmd.ExecuteReader
            While DbRead.Read
                Dim Data1 As String = CStr(DbRead.Item("FeltNavn"))
            loop
        Catch ex As Exception
            Err.Clear()
        End Try
Avatar billede arne_v Ekspert
04. juni 2010 - 21:22 #1
Vent lige en uge med database og start med "hello world" i ASP.NET !

Hvis du bruger VWD, saa kan du jo proeve og se om ikke IDE'en kan guide dig lidt igang.

Og saa skal du finde en bog eller en tutorial paa nettet som starter helt fra bunden af.
Avatar billede loonie Nybegynder
04. juni 2010 - 23:58 #2
Hej!
Ingen grund til at vente Arne. Har lavet rigeligt af "Hello World". Det er bare meget lang tid siden jeg har programmeret, og værktøjet ser noget anderledes ud. har travet igennem dele af nettet for netop at finde tutorials, men ikke fundet noget brugbart.
Avatar billede arne_v Ekspert
05. juni 2010 - 04:15 #3
Så hvis du nu poster en helloworld.aspx og helloworld.aspx.vb hvor den sidste i sætter i label i den første, så ændrer vi den kode til at sætte labelen til noget fra databasen.
Avatar billede loonie Nybegynder
06. juni 2010 - 01:39 #4
Hey!

Jeg har strikket følgende sammen, det virker fint når jeg kører det via debug i visual studio, men giver fejl i web.config filen, når jeg kører den direkte i browseren via IIS?

"It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level.  This error can be caused by a virtual directory not being configured as an application in IIS."
"Line 76:            ASP.NET to identify an incoming user.
Line 77:        -->
Line 78:         <authentication mode="Windows"/>
Line 79:         <!--
Line 80:            The <customErrors> section enables configuration"

Koden:

Default.aspx:
<%@ Page Inherits="TestClass" Src="Default.aspx.vb" %> 
<html> 
<head> 
<title>Untitled</title> 
</head> 

<body> 
<form id="Form1" runat="server"> 
  <asp:Button id="btnSubmit" Text="Klik her" runat="server" 
    OnClick="Click" /> 
  <br />
  <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
 
</form> 
</body> 
</html>

Default.aspx.vb:
Imports System
Imports System.Web.UI
Imports System.Web.UI.WebControls

Public Class TestClass
    Inherits Page

    Protected WithEvents btnSubmit As Button
    Protected WithEvents Label1 As Label

    Sub Click(ByVal s As Object, ByVal e As EventArgs)
     
        Label1.Text = "Hello World"
    End Sub
End Class
Avatar billede arne_v Ekspert
06. juni 2010 - 04:12 #5
Hvordan ser web.config ud ? (det er jo der fejlen tilsyneladende er)
Avatar billede loonie Nybegynder
06. juni 2010 - 22:01 #6
Her er web.config filen!
<?xml version="1.0"?>
<configuration>
    <configSections>
        <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
            <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
                <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
                <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
                    <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
                    <section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
                    <section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
                    <section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
                </sectionGroup>
            </sectionGroup>
        </sectionGroup>
    </configSections>
    <appSettings/>
    <connectionStrings/>
    <system.web>
        <!--
            Set compilation debug="true" to insert debugging
            symbols into the compiled page. Because this
            affects performance, set this value to true only
            during development.

            Visual Basic options:
            Set strict="true" to disallow all data type conversions
            where data loss can occur.
            Set explicit="true" to force declaration of all variables.
        -->
        <compilation debug="true" strict="false" explicit="true">
            <assemblies>
                <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
                <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
                <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
                <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
            </assemblies>
        </compilation>
        <pages>
            <namespaces>
                <clear/>
                <add namespace="System"/>
                <add namespace="System.Collections"/>
                <add namespace="System.Collections.Generic"/>
                <add namespace="System.Collections.Specialized"/>
                <add namespace="System.Configuration"/>
                <add namespace="System.Text"/>
                <add namespace="System.Text.RegularExpressions"/>
                <add namespace="System.Linq"/>
                <add namespace="System.Xml.Linq"/>
                <add namespace="System.Web"/>
                <add namespace="System.Web.Caching"/>
                <add namespace="System.Web.SessionState"/>
                <add namespace="System.Web.Security"/>
                <add namespace="System.Web.Profile"/>
                <add namespace="System.Web.UI"/>
                <add namespace="System.Web.UI.WebControls"/>
                <add namespace="System.Web.UI.WebControls.WebParts"/>
                <add namespace="System.Web.UI.HtmlControls"/>
            </namespaces>
            <controls>
                <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
                <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            </controls>
        </pages>
        <!--
            The <authentication> section enables configuration
            of the security authentication mode used by
            ASP.NET to identify an incoming user.
        -->
        <authentication mode="Windows"/>
        <!--
            The <customErrors> section enables configuration
            of what to do if/when an unhandled error occurs
            during the execution of a request. Specifically,
            it enables developers to configure html error pages
            to be displayed in place of a error stack trace.

        <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
            <error statusCode="403" redirect="NoAccess.htm" />
            <error statusCode="404" redirect="FileNotFound.htm" />
        </customErrors>
        -->
        <httpHandlers>
            <remove verb="*" path="*.asmx"/>
            <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
        </httpHandlers>
        <httpModules>
            <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        </httpModules>
    </system.web>
    <system.codedom>
        <compilers>
            <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" warningLevel="4" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
                <providerOption name="CompilerVersion" value="v3.5"/>
                <providerOption name="OptionInfer" value="true"/>
                <providerOption name="WarnAsError" value="false"/>
            </compiler>
        </compilers>
    </system.codedom>
    <!--
        The system.webServer section is required for running ASP.NET AJAX under Internet
        Information Services 7.0.  It is not necessary for previous version of IIS.
    -->
    <system.webServer>
        <validation validateIntegratedModeConfiguration="false"/>
        <modules>
            <remove name="ScriptModule"/>
            <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        </modules>
        <handlers>
            <remove name="WebServiceHandlerFactory-Integrated"/>
            <remove name="ScriptHandlerFactory"/>
            <remove name="ScriptHandlerFactoryAppServices"/>
            <remove name="ScriptResource"/>
            <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        </handlers>
    </system.webServer>
    <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
            <dependentAssembly>
                <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>
                <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
            </dependentAssembly>
            <dependentAssembly>
                <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>
                <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
            </dependentAssembly>
        </assemblyBinding>
    </runtime>
</configuration>
Avatar billede loonie Nybegynder
06. juni 2010 - 22:16 #7
Ok - flot, den skulle bare oprettes som application i IIS. Så se venligst bort fra web.config problemet!
Avatar billede arne_v Ekspert
07. juni 2010 - 01:35 #8
Vil det sige at koden i #4 nu virker?
Avatar billede arne_v Ekspert
07. juni 2010 - 01:39 #9
Hvis ja, så skal:

    Sub Click(ByVal s As Object, ByVal e As EventArgs)
        Label1.Text = "Hello World"
    End Sub

erstattes med f.eks.:

    Sub Click(ByVal s As Object, ByVal e As EventArgs)
        Dim con As OleDbConnection = New OleDbConnection("provider=SqlOleDB; SERVER=WIN-8YDYI87C83F; UID=sa; PWD=Halden; DATABASE=EIS30Local")
        con.Open
        Dim cmd As OleDbCommand = New OleDbCommand("Select Count(*) From Dintabel", con)
        Dim n As Integer = cmd.ExecuteScalar
        Label1.Text = "Tabellen indeholde " & n & " rækker"
    End Sub
Avatar billede arne_v Ekspert
07. juni 2010 - 01:40 #10
Skal du have hele tabellens indhold vist skal have fat i en anden kontrol en Label.

GridView eller Repeater.
Avatar billede arne_v Ekspert
07. juni 2010 - 01:41 #11
Avatar billede loonie Nybegynder
07. juni 2010 - 14:46 #12
Fedt! Det spiller - Tak arne_v :)
Avatar billede arne_v Ekspert
07. juni 2010 - 15:02 #13
saa smider jeg et svar
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
Kurser inden for grundlæggende programmering

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