Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Server was unable to process request. ---> Object reference not set to an instance of an object

Îåêßíçóå áðü ôï ìÝëïò Harkon. Τελευταία δημοσίευση από το μέλος Harkon στις 01-08-2013, 19:45. Υπάρχουν 18 απαντήσεις.
Σελίδα 1 από 2 (19 εγγραφές)   1 2 >
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  25-07-2013, 12:20 73661

    Server was unable to process request. ---> Object reference not set to an instance of an object

    Καλησπέρα σας,

     έχω ένα VB.NET application που κάνει κάποια πραγματάκια. 

    Μία από τις συναρτήσεις που εκτελεί, πρέπει να την μεταφέρω σε webservice.

    Δεν είναι πρώτη φορά που το κάνω, όμως αυτή τη φορά λαμβάνω το σφάλμα: Server was unable to process request. ---> Object reference not set to an instance of an object και δεν ξέρω τι μπορεί να φταίει. 

    Η συνάρτηση τρέχει κανονικά όταν δεν καλείται μέσω του webservice οπότε δεν υπάρχει περίπτωση κάτι που δεν πρέπει να είναι null.

    Ο κώδικας που καλεί το webservice:

    Dim ws As New webtest.Service

    result = ws.insertToDestination(dSet, iterNum) 

     Καλώντας το path του webservice στον browser, εμφανίζεται κανονικά η webmethod.

     

    Καμιά ιδέα για το τι μπορεί να φταίει, που να κοιτάξω;

     Σας ευχαριστώ πολύ.

    Νίκος 

     

    Δημοσίευση στην κατηγορία:
  •  25-07-2013, 18:42 73663 σε απάντηση της 73661

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Πού σκάει? Πού σταματάει ο debugger? Τί λέει το stack trace? Στο σημείο που σκάει θα δεις ότι κάποια από τις μεταβλητές ή τις παραμέτρους είναι null
    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  25-07-2013, 18:55 73664 σε απάντηση της 73663

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Ευχαριστώ για την απάντηση. 

    Στο VS σταματάει στην γραμμή που καλεί την webmethod του webservice:  result = ws.insertToDestination(dSet, iterNum) 

     

    Stack Trace:

     

     System.Web.Services.Protocols.SoapException was unhandled

      Actor=""

      Lang=""

      Message="Server was unable to process request. ---> Object reference not set to an instance of an object."

      Node=""

      Role=""

      Source="System.Web.Services"

      StackTrace:

           at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)

           at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)

           at D_Export.gr.itbox.webtest.Service.insertToDestination(DataSet dSet, Int16 iteration) in C:\Documents and Settings\ns\Projects\D_Export\Web References\webtest\Reference.vb:line 81

           at D_Export.frmMain.Button1_Click(Object sender, EventArgs e) in C:\Documents and Settings\ns\Projects\D_Export\frmMain.vb:line 511

           at System.Windows.Forms.Control.OnClick(EventArgs e)

           at System.Windows.Forms.Button.OnClick(EventArgs e)

           at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)

           at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)

           at System.Windows.Forms.Control.WndProc(Message& m)

           at System.Windows.Forms.ButtonBase.WndProc(Message& m)

           at System.Windows.Forms.Button.WndProc(Message& m)

           at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

           at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

           at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

           at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)

           at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)

           at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)

           at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)

           at System.Windows.Forms.Application.Run(ApplicationContext context)

           at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()

           at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()

           at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)

           at D_Export.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:line 81

           at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)

           at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)

           at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()

           at System.Threading.ThreadHelper.ThreadStart_Context(Object state)

           at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)

           at System.Threading.ThreadHelper.ThreadStart()

      InnerException: 

     
     Σε ότι αφορά το Null, εάν αντικαταστήσω την γραμμή:
     
     result = ws.insertToDestination(dSet, iterNum) 
     
    με result = insertToDestination(dSet, iterNum)  δηλαδή εάν καλέσω την συνάρτηση Locally και όχι μέσω ws τότε δεν χτυπάει άρα πιστεύω πως δεν θα εμπλέκεται κάποια null μεταβλητή, σωστά δεν το σκέφτομαι;
     
     
  •  25-07-2013, 22:26 73665 σε απάντηση της 73661

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Για να μπορέσεις να κάνεις debug το service και να δεις το σφάλμα θα πρέπει το web site που περιέχει το service να τρέχει και αυτό σε debug mode.

    Αυτό μπορεί να γίνει με απευθείας attach επάνω στο thread του IIS από το Visual Studio, ή αν και τα δύο projects είναι στο ίδιο solution με multiple startup projects...

      

    George J.

     


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  26-07-2013, 09:55 73668 σε απάντηση της 73665

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Καλημέρα σας κι ευχαριστώ για τις απαντήσεις!

     Έγραψα και χθες αλλά πρέπει να έκανα κάτι λάθος και δεν δημοσιεύτηκε.

    Ο Κώδικας «σκάει» στην γραμμή κλήσης της webmethod: result = ws.insertToDestination(dSet, iterNum) 

     Εκεί δεν βλέπω κάτι null από το VS.

    Επίσης, εάν αντι για :  result = ws.insertToDestination(dSet, iterNum) 

    βάλω : result = insertToDestination(dSet, iterNum), δηλαδή καλέσω τη συνάρτηση από την  app και όχι από το webservice, τότε δουλεύει κανονικά, άρα φαντάζομαι πως δεν είναι κάποιο θέμα μεταβλητών/συνάρτησης, τι λέτε;

     

    Stack Trace 

     System.Web.Services.Protocols.SoapException was unhandled

      Actor=""

      Lang=""

      Message="Server was unable to process request. ---> Object reference not set to an instance of an object."

      Node=""

      Role=""

      Source="System.Web.Services"

      StackTrace:

           at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)

           at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)

           at D_Export.webtest.Service.insertToDestination(DataSet dSet, Int16 iteration) in C:\Documents and Settings\ns\D_Export\Web References\webtest\Reference.vb:line 81

           at D_Export.frmMain.Button1_Click(Object sender, EventArgs e) in C:\Documents and Settings\ns\D_Export\frmMain.vb:line 511

           at System.Windows.Forms.Control.OnClick(EventArgs e)

           at System.Windows.Forms.Button.OnClick(EventArgs e)

           at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)

           at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)

           at System.Windows.Forms.Control.WndProc(Message& m)

           at System.Windows.Forms.ButtonBase.WndProc(Message& m)

           at System.Windows.Forms.Button.WndProc(Message& m)

           at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

           at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

           at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

           at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)

           at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)

           at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)

           at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)

           at System.Windows.Forms.Application.Run(ApplicationContext context)

           at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()

           at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()

           at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)

           at D_Export.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:line 81

           at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)

           at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)

           at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()

           at System.Threading.ThreadHelper.ThreadStart_Context(Object state)

           at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)

           at System.Threading.ThreadHelper.ThreadStart()

      InnerException: 

     

    Θα κοιτάξω πως γίνεται:

    Αυτό μπορεί να γίνει με απευθείας attach επάνω στο thread του IIS από το Visual Studio, ή αν και τα δύο projects είναι στο ίδιο solution με multiple startup projects

     Και θα σας πω νεότερα..

     

    Ευχαριστώ πολύ και πάλι! 

     


  •  26-07-2013, 18:02 73673 σε απάντηση της 73661

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Harkon:

    Ο κώδικας που καλεί το webservice:

    Dim ws As New webtest.Service

    result = ws.insertToDestination(dSet, iterNum) 

     Καλώντας το path του webservice στον browser, εμφανίζεται κανονικά η webmethod.

     

    Ως γνωστόν, με τη VB δεν τα πάω καλά. Αλλά όταν κάνω initialization σ' ένα object δεν βάζω παρενθέσεις στο τέλος;  Dim ws As New webtest.Service(). Μήπως το μόνο που είναι null είναι το service σου;


    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  26-07-2013, 18:50 73674 σε απάντηση της 73673

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Απ' το stack trace φαίνεται ότι σκάει μέσα στην insertToDestination, όταν προσπαθεί να διαβάσει τα αποτελέσματα της κλήσης. Μπορεί πολύ απλά το web service να γύρισε null αντί για κάποιο αποτέλεσμα

    Να παρατηρήσω πάντως ότι το να περνάς dataset σε web service είναι κάπως κακή ιδέα? Ουσιαστικά καταργείς κάθε έννοια schema.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  26-07-2013, 19:22 73675 σε απάντηση της 73674

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Και DataSet και iterNumber(!!). Το ότι τρέχει χωρίς σφάλματα αν δεν καλέσεις το web service δε λέει τίποτα. Από τις παραμέτρους που περνάς φαίνεται ότι εκτελείς κάτι ξανά και ξανά και πιθανόν κάποια objects να μην "συγχρονίζονται" όταν καλείς το service. Ούτε που μπορώ να φανταστώ τι μπορεί να πηγαίνει λάθος με τα DataTables. Μάλλον πρέπει να δώσεις περισσότερο κώδικα...

    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  26-07-2013, 19:57 73676 σε απάντηση της 73674

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Γεια χαρά!

     Έβαλα και τις παρενθέσεις (μακάρι να ήταν αυτό ειλικρινά...) αλλά τίποτα πάλι..

     Πως γίνεται να γυρίσει Null ή γενικά να έχει πρόβλημα η συνάρτηση όταν ακριβώς η ίδια συνάρτηση με τα ίδια δεδομένα παίζει όταν την καλώ από το app project;

    Όσο για την παρατήρηση σε ευχαριστώ πολύ που την έκανες, ειλικρινά!

    Κάποια στιγμή πήγα να το κάνω με xml serialization άλλα έμπλεξα, υπήρχε πίεση (κλασικά) και τελικά το έφτιαξα με dataset μιας και μου φαινόταν το πιο εύκολο εκείνη τη στιγμή :( 

    Γενικά ποιος τρόπος προτείνεται για την αποστολή δεδομένων πινάκων MSSQL/mysql etc από έναν server/database/table σε έναν άλλο όταν η μόνη επιτρεπτή συνεργασία τους είναι μέσω web service? 

     

  •  26-07-2013, 20:07 73677 σε απάντηση της 73675

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Αυτό που θέλω να κάνω είναι το εξής: Να στείλω τα δεδομένα ενός πίνακα Α σε έναν σέρβερ Χ στον πίνακα Β ενός σέρβερ Υ. 

    Τα δεδομένα όμως είναι πάρα πολλά και γι αυτό επιλέγω subsets (με subqueries) των δεδομένων και τα στέλνω τμηματικά, γι αυτό και το iteration.

     Δυστυχώς το έχω ξανακάνει και παίζει (αν και θέλω πολύ να βρω guidance για κάτι πιο σωστό προγραμματιστικά).

     Επίσης, το κάνει στο πρώτο pass οπότε δεν είναι πως κάτι στην 2η επανάληψη δεν έχει "καθαρίσει".

    Ξανατονίζω πως το ίδιο c/p παίζει αν δεν το καλέσω μέσω ws.

     

    Ευχαριστώ πολύ για τον χρόνο σας 

  •  26-07-2013, 20:22 73678 σε απάντηση της 73676

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Για DataSets, εγώ θα έλεγα να ξεκινήσεις από το MSDN (Working with datasets in N-Tier Applications). Υπάρχει και video. Η συντριπτική πλειοψηφία του forum θα σου πει να προτιμήσεις κάποιο ORM. Γενικά, δεν υπάρχει εύκολη λύση. Και όπως σου γράφει ο Παναγιώτης, μην περνάς ΟΛΟΚΛΗΡΟ DataSet σε WebService. Σε κάποιο άρθρο που είχα διαβάσει παλιά, ο συγγραφέας έγραφε ότι στα web services καλόν είναι να περνάμε τα data και όχι τον "κουβά" (αναφερόμενος στα DataSets). Εγώ διαφωνώ μ' αυτό το statement ως προς τον παραλληλισμό. Το DataSet δεν είναι ο "κουβάς", αλλά το τριαξονικό φορτηγό! Πρέπει να μελετήσεις πολύ καλά το ADO.NET για να γίνεις παραγωγικός και αποτελεσματικός κάνοντας χρήση των datasets...

    Τώρα, όσον αφορά στο πρόβλημά σου, αυτό που πιστεύω ότι γίνεται είναι ότι επειδή φαίνεται να περνάς κάποιο dataset ξανά και ξανά, δεν συγχρονίζεις τις αλλαγές που συμβαίνουν στα datatables στον client. Χωρίς κώδικα, βέβαια, όλ' αυτά δεν είναι τίποτα περισσότερο από εικασίες...


    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  26-07-2013, 20:33 73679 σε απάντηση της 73678

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Χε, χε... το βρήκα! Ο Hanselman κάνει λόγο για bowls και όχι για "κουβάδες"! Περιττό να σου πως ότι θεωρώ τον παραλληλισμό ακόμα πιο ήπιο...

    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  26-07-2013, 20:45 73680 σε απάντηση της 73678

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Πωπω δεν είχε κάποτε tag για κώδικα και έκανε και αυτόματη στοίχηση; 

     

    App: Εδώ καλώ την συνάρτηση του webservice

    [code]

     Me.Cursor = Cursors.WaitCursor

    Dim halt As Boolean = False

            Dim iterNum As Int16 = 1

            Dim result As String = "" 

            Do Until halt

                Me.Cursor = Cursors.WaitCursor

                Dim dSet As DataSet = GetSomeData(iterNum)

                If dSet Is Nothing Then

                    halt = True

                Else

                    Me.Cursor = Cursors.WaitCursor

                    Dim ws As New webtest.Service()

                    result = ws.insertToDestination(dSet, iterNum)

                    If result <> "" Then                   

                        DoLog(result)

                        halt = True

                        Me.Cursor = Cursors.Default

                        Exit Sub

                    End If

                End If

                iterNum = iterNum + 1

            Loop

            Me.Cursor = Cursors.Default

    [/code] 

     και η συνάρτηση του webservice (την κάνω trim γιατί είναι τεράστια)

    [code]

     Public GET_DSERVER As String, GET_DDBNAME As String, GET_DUSERNAME As String, GET_DPASSWORD As String, GET_DOWNER As String

        Public WithEvents cnDest As SqlConnection

        Public Function getDBConnCreds() As Integer

            GET_DSERVER = ConfigurationManager.AppSettings("DBServer")

            GET_DDBNAME = ConfigurationManager.AppSettings("Catalog")

            GET_DUSERNAME = ConfigurationManager.AppSettings("DBUsername")

            GET_DPASSWORD = ConfigurationManager.AppSettings("DBPassword")

            GET_DOWNER = ConfigurationManager.AppSettings("DBUser")

        End Function

    Public Function connectDestination() As Integer

            Try

                'connect

                cnDest = New SqlConnection

                cnDest.ConnectionString = _

                    "Data Source=" & GET_DSERVER & ";Initial Catalog=" & GET_DDBNAME & ";User ID=" & GET_DUSERNAME & ";Password=" & GET_DPASSWORD _

                    & ";MultipleActiveResultSets=True"

     

                cnDest.Open()

                connectDestination = 200

            Catch ex As Exception

                connectDestination = 0

            End Try

        End Function

     


        <WebMethod()> _

        Public Function insertToDestination(ByVal dSet As DataSet, ByVal iteration As Int16) As String

            Try

                Dim status As String

                status = getDBConnCreds()

                If status = 0 Then

                    Return "insertLawyersToDestination - Settings file error"

                    Exit Function

                End If

                status = connectDestination()

                If status = 0 Then

                    Return "insertLawyersToDestination - Connection error"

                    Exit Function

                End If

                Dim cmd As New SqlCommand()

                cmd.Connection = cnDest

                cmd.CommandType = CommandType.Text


                Dim sql As String

                If iteration = 1 Then

                    sql = "DELETE FROM CUSTOMER WHERE cast(CODE as bigint) < 50000"

                    cmd.CommandText = sql

                    cmd.ExecuteNonQuery()

                End If

    Dim p1 As New SqlParameter("@ID", SqlDbType.Int, 4)

                Dim p2 As New SqlParameter("@ACCMASK", SqlDbType.VarChar, 25)

                Dim p3 As New SqlParameter("@AFM", SqlDbType.VarChar, 15)

                Dim p4 As New SqlParameter("@ACCCRDLIMIT", SqlDbType.Float, 8)

                Dim p5 As New SqlParameter("@BILLTOCUSID", SqlDbType.Int, 4)

                Dim p6 As New SqlParameter("@CARRIER", SqlDbType.VarChar, 30)

                Dim p7 As New SqlParameter("@CITY1", SqlDbType.VarChar, 30)

                Dim p8 As New SqlParameter("@CITY2", SqlDbType.VarChar, 30)

                Dim p9 As New SqlParameter("@CNTID", SqlDbType.Int, 4)

                Dim p10 As New SqlParameter("@CODE", SqlDbType.VarChar, 25) 

     

    Dim myDataRow As DataRow

                For Each myDataRow In dSet.Tables(0).Rows              

                    sql = "INSERT INTO CUSTOMER(ID,ACCMASK,AFM,ACCCRDLIMIT,BILLTOCUSID,CARRIER" _

                            & ",CITY1,CITY2,CNTID,CODE)" _

                        & " VALUES(@ID,@ACCMASK,@AFM,@ACCCRDLIMIT,@BILLTOCUSID,@CARRIER" _

                            & ",@CITY1,@CITY2,@CNTID,@CODE)"

                    With cmd

                        p1.Value = IIf(IsDBNull(myDataRow("ID")), DBNull.Value, myDataRow("ID"))

                        p2.Value = IIf(IsDBNull(myDataRow("ACCMASK")), DBNull.Value, myDataRow("ACCMASK"))

                        p3.Value = IIf(IsDBNull(myDataRow("AFM")), DBNull.Value, myDataRow("AFM"))

                        p4.Value = IIf(IsDBNull(myDataRow("ACCCRDLIMIT")), DBNull.Value, myDataRow("ACCCRDLIMIT"))

                        p5.Value = IIf(IsDBNull(myDataRow("BILLTOCUSID")), DBNull.Value, myDataRow("BILLTOCUSID"))

                        p6.Value = IIf(IsDBNull(myDataRow("CARRIER")), DBNull.Value, myDataRow("CARRIER"))

                        p7.Value = IIf(IsDBNull(myDataRow("CITY1")), DBNull.Value, myDataRow("CITY1"))

                        p8.Value = IIf(IsDBNull(myDataRow("CITY2")), DBNull.Value, myDataRow("CITY2"))

                        p9.Value = IIf(IsDBNull(myDataRow("CNTID")), DBNull.Value, myDataRow("CNTID"))

                        p10.Value = IIf(IsDBNull(myDataRow("CODE")), DBNull.Value, myDataRow("CODE"))

     

    .Parameters.Add(p1)

                        .Parameters.Add(p2)

                        .Parameters.Add(p3)

                        .Parameters.Add(p4)

                        .Parameters.Add(p5)

                        .Parameters.Add(p6)

                        .Parameters.Add(p7)

                        .Parameters.Add(p8)

                        .Parameters.Add(p9)

                        .Parameters.Add(p10) 

     .CommandText = sql

                        .ExecuteNonQuery()

                        .Parameters.Clear()

                    End With

                Next

                Return ""

    Catch ex As Exception

                Return "insertToDestination - " & ex.Message

                Exit Function

            Finally          

                cnDest.Close()

                cnDest.Dispose()

            End Try

        End Function 

    [/code] 

  •  27-07-2013, 11:24 73682 σε απάντηση της 73680

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Προτού καλέσεις την insertToDestination, βεβαιώσου ότι το "Tables" collection έχει... tables! Το ότι εξετάζεις αν ολόκληρο το dataset είναι null ή όχι δεν σου εξασφαλίζει ότι θα έχει και tables. Χρησιμοποιείς το collection στη σειρά "For Each myDataRow In dSet.Tables(0).Rows", χωρίς έλεγχο.

    Αυτά, με μια πολύ σύντομη ματιά. Αλλιώς χρειάζεται να κάνεις debugging καθώς τρέχει. Η παράθεση του κώδικα, από μόνη της, δεν είναι αρκετή.


    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  27-07-2013, 11:40 73685 σε απάντηση της 73665

    Απ: Server was unable to process request. ---> Object reference not set to an instance of an object

    Γιώργο, με κόβει συνέχεια! Ούτε PM δε μπορώ να στείλω στον Harkon!

    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
Σελίδα 1 από 2 (19 εγγραφές)   1 2 >
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems