Membership Plus Data

Discussion in 'Databases' started by JohnBF, Jan 26, 2008.

Thread Status:
Threads that have been inactive for 5 years or longer are closed to further replies. Please start a new thread.
  1. I want to deploy a website that uses asp.net membership controls and additional database tables. I added one SQL database to my account and I can do either membership or the data but not both. I tried adding the tables I need to the aspnetdb.mdf created by the membership controls, but I can't get that to work.

    Do I need to adda second SQL database to do both oris there a way to do both with one database?

    Thanks.

    /John
     
  2. This is a common discussion here.
    The SQL Server Express Database itself isn't support here but if you have the SQL Server 2005 add-on you can add it.

    It's also possible to export everything in the Express DB to a SQL Server 2000 or 2005 account here.
    But to do that you'll need a data pump on your end, like the SQL Server management tools.

    If any of that is fuzzy I/we can offer more information.
    Salute,
    Mark
     
  3. Thanks, Mark.


    I'm able to get the membership part working by exactlyfollowing all the steps in:


    kb.discountasp.net/article.aspx?id=10413


    However, when I add another table to ASPNETDB.NET and access it with a gridview, both membership and the gridview work fine on my local computer (using VWD 2008 Express) but when I upload to DASP, membership still works but the page with the gridview prompts the error message below. I've tried all the variations of connection string and everything else I can think of but so far nothing works.


    /John
    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: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)


    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: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

    Source Error:





    Code:
    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:





    Code:
    [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: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)]
       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) +133
       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.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +17
       System.Web.UI.WebControls.DataBoundControl.PerformSelect() +149
       System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +70
       System.Web.UI.WebControls.GridView.DataBind() +4
       System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() +82
       System.Web.UI.WebControls.CompositeDataBoundControl.CreateChildControls() +69
       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.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2041
    
     
  4. That is an excellent article. [​IMG]
    Thing I like about it is the mention of using aspnet_regsql.exe or the SQL Server Management tools.
    Should be stickied. [​IMG]
     
  5. I'd suggest doing your membership and roles first then creating additonal tables within your Database as needed.
    Your Database account can have multiple tables.
    Helps to prefix your table names, offers some sanity later.
    i.e. tables for a blog might prefix with bl_tablename, etc.

    Need any more help with that?
    Salute,
    Mark
     
  6. the excellent article by 4guys is a good discussion of what happens in aspnet_regsql.


    Seems indeed the ASPNETDB.MDF and the app-specific database.mdf become merged into one set of tables and relationships.


    There is also discussion regarding the case where relationships are required between the users/roles described in ASPNETDB.MDF
    and the app-specific database.mdf. The merging process simplifies the connectionStrings to operate on the single merged database.
    The problem is that because we do the merge at the DASP site, we dont see the actual results of this.
    Also, it becomes difficult to go back and forth between development and deployment.
    I would be neater is we did the merge at the local
    website during development and then passed the merged single database to DASP using the Copy tool with VS2008.
    If we did this, we would be testing at the local server the exact website that we thendeploy to DASP.
    I wonder if this would work?

    ---Jim

    ---jim
     
Thread Status:
Threads that have been inactive for 5 years or longer are closed to further replies. Please start a new thread.

Share This Page