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

 

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

Προβλημα με ASP.NET + MySQL

Îåêßíçóå áðü ôï ìÝëïò kirillos217. Τελευταία δημοσίευση από το μέλος Παναγιώτης Καναβός στις 25-11-2008, 13:32. Υπάρχουν 6 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  25-11-2008, 12:45 46449

    Προβλημα με ASP.NET + MySQL

    Καλημέρα,
    έχω φτιάξει ένα site σε asp.net με σύνδεση με mysql. εδώ και καιρό προσπαθώ να το ανεβάσω στον provider και αντιμετωπίζω διάφορα προβλήματα. ενώ μου έχουν πει ότι έχουν κάνει τις κατάλληλες ρυθμίσεις και έχουν εγκαταστήσει και connector συνεχίζω να αντιμετωπίζω πρόβλημα. αποφάσισα λοιπόν να ανεβάσω μια απλή σελίδα με μια σύνδεση με ένα πεδίο της βάσης και παίρνω το παρακάτω σφάλμα

    Server Error in '/' Application.
    An error has occurred while establishing a connection to the server. When connecting 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)
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.Data.SqlClient.SqlException: An error has occurred while establishing a connection to the server. When connecting 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)

    Source Error:

    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

    Stack Trace:

    [SqlException (0x80131904): An error has occurred while establishing a connection to the server. When connecting 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)]
    System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +800131
    System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +186
    System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject) +737554
    System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) +114
    System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart) +421
    System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) +181
    System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) +173
    System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) +357
    System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) +30
    System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) +424
    System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) +66
    System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +494
    System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +82
    System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +105
    System.Data.SqlClient.SqlConnection.Open() +111
    System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +121
    System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +137
    System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable) +83
    System.Web.UI.WebControls.SqlDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments) +1770
    System.Web.UI.WebControls.BaseDataList.GetData() +57
    System.Web.UI.WebControls.DataList.CreateControlHierarchy(Boolean useDataSource) +284
    System.Web.UI.WebControls.BaseDataList.OnDataBinding(EventArgs e) +56
    System.Web.UI.WebControls.BaseDataList.DataBind() +52
    System.Web.UI.WebControls.BaseDataList.EnsureDataBound() +76
    System.Web.UI.WebControls.BaseDataList.CreateChildControls() +63
    System.Web.UI.Control.EnsureChildControls() +87
    System.Web.UI.Control.PreRenderRecursiveInternal() +50
    System.Web.UI.Control.PreRenderRecursiveInternal() +170
    System.Web.UI.Control.PreRenderRecursiveInternal() +170
    System.Web.UI.Control.PreRenderRecursiveInternal() +170
    System.Web.UI.Control.PreRenderRecursiveInternal() +170
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2041


    Version Information: Microsoft .NET Framework Version:2.0.50727.1433; ASP.NET Version:2.0.50727.1433



    το web.config που χρησιμοποιώ είναι


    <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
    <appSettings>
    <add key="CrystalImageCleaner-AutoStart" value="true" />
    <add key="CrystalImageCleaner-Sleep" value="60000" />
    <add key="CrystalImageCleaner-Age" value="120000" />
    </appSettings>
    <connectionStrings>
    <remove name="LocalSqlServer" />
    <add name="testConnectionStringARXH1" connectionString="Server=localhost;User ID=root;Password=xxxx;Database=mydatabase" />
    </connectionStrings>
    <system.web>
    <customErrors mode="Off" />
    <compilation defaultLanguage="c#" />

    </system.web>
    </configuration>


    αξίζει να σημειωθεί ότι τοπικά στον υπολογιστή μου όλα δουλεύουν!!!!
    Ευχαριστώ
  •  25-11-2008, 12:57 46450 σε απάντηση της 46449

    Απ: Προβλημα με ASP.NET + MySQL

    Προσπαθείς να συνδεθείς στον MySQL με connection string και κλάσεις για τον SQL Server ?? Hmm
    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  25-11-2008, 12:59 46451 σε απάντηση της 46449

    Απ: Προβλημα με ASP.NET + MySQL

    πρέπει να του πεις στο connection ότι θα χρησιμοποιήσει MySQL νομίζω
  •  25-11-2008, 13:10 46452 σε απάντηση της 46451

    Απ: Προβλημα με ASP.NET + MySQL

    Πρέπει να χρησιμοποιήσεις connection string κατάλληλο για MySQL και αντί για τις SqlXXX κλάσεις να χρησιμοποιήσεις αυτές του provider, ή ακόμα καλύτερα τις DbXXX οι οποίες δουλεύουν με οποιοδήποτε provider. Το connection string φτιάχνεται εύκολα από τα project settings. Οι κλάσεις όμως πρέπει να αλλάξουν με το χέρι.
    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  25-11-2008, 13:14 46453 σε απάντηση της 46449

    Απ: Προβλημα με ASP.NET + MySQL

    Αν αναφέρεσαι στο

    <remove name="LocalSqlServer"
    έχεις δίκιο έκανα λάθος copy paste αλλα και με το

    <remove name="LocalMySqlServer" το ίδιο μήνυμα βγάζει

    εάν δεν βαλω κώδικα <remove name.........
    μου προστίθεται στο web.config    

    <remove name="LocalSqlServer"
  •  25-11-2008, 13:16 46454 σε απάντηση της 46453

    Απ: Προβλημα με ASP.NET + MySQL

    επιπλέον στο help του connector που χρησιμοποιώ για τη σύνδεση προτείνει
    <connectionStrings>
    <remove name="LocalMySqlServer"/>
    <add name="LocalMySqlServer" connectionString="server=xxx;uid=xxx;pwd=xxx"/>
    </connectionStrings>

  •  25-11-2008, 13:32 46456 σε απάντηση της 46454

    Απ: Προβλημα με ASP.NET + MySQL

    Όχι, δεν αναφέρομαι στο Remove το οποίο καλώς υπάρχει. Αναφέρομαι στα errors που αφορούν τις κλάσεις SqlXXX οι οποίες είναι για τον SQL Server και όχι οι γενικές. Ξανακοιτώντας όμως το Exception Stack βλέπω ότι χρησιμοποιείς την DbDataAdapter, οπότε το πρόβλημα είναι το connection string.

    Στο <add > που χρησιμοποιείς λείπει το providerName attribute το οποίο προσδιορίζει ποιός driver χρησιμοποιείται. Ο default provider είναι ο System.Data.SqlClient, οπότε ο κώδικας σου προσπαθεί να συνθεδεί σε κάποιο SQL Server. Για να συνδεθείς με MySQL θα πρέπει να προσθέσεις και το providerName attribute και να βάλεις εκεί το όνομα του MySQL provider. Είναι πολύ ευκολότερο όμως να φτιάξεις το connection string από τα project settings με τον ενσωματομένο connection wizard, ο οποίος δεν ξεχνάει να βάλει το σωστό provider.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems