2011-07-12 12 views
1

データベースのバックアップをアップロードしても問題ありません。 ASP.NETの設定から新しいユーザーを作成したので、ASPNETDBにユーザー情報を保存することにしました。どのようにASPNETDBデータベースをサーバーにアップロードできますか?

私はすでにMVSから自分のデータベースを公開し、それをM SQL Server Management Studio 2008で開いてバックアップを作成しましたが、ASPNETDBが見つかりませんでした。

、私の質問は:私は私のデータベースをアップロードするとき

  1. は、このデータベースには、ちょうどそれを自動的にアップロードしていないのですか?私が私のウェブサイトを公開したときに表示されません。

  2. もし私がこのユーザーに許可を使用しているため、私は自分のサイトにログインできるようにASPNETDBをアップロードできますか?

答えて

0

メンバーシップAPIを使用しているとします。

SQL Server Express Editionを搭載したマシンでASP.NETを使用している場合、最初のユーザーを作成するときにMembership APIの基礎となるデータストアに必要なデータストアが自動的に作成されます。この機能は、SqlMembershipProviderを通じて提供されます。 SqlMembershipProviderは、ASPNETDB.MDBというWebサイトのApp_Data特殊ディレクトリに新しいデータベースを自動的に作成します。このデータベースは、ユーザー情報、役割情報、ユーザー役割の割り当てなどを格納および管理するために必要な完全なスキーマを実装します。

これは簡単に確認できます。あなたのweb.configには、次のようなものが表示されます:

<connectionStrings> 
    <add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true" 
     providerName="System.Data.SqlClient" /> 
</connectionStrings> 

このデータベースはあなたのウェブサイトと共にアップロードされているはずです。

あなたが自分のデータベースにaspnetdbまたは必要なテーブルを作成したい場合は、これを考慮してください(これは良い方法です)。

あなたも同様のディスカッションに興味がありますhere。さらに、この.mdfデータベースをSQL Server Management Studioで入手したい場合は、データベースを接続する方法を知ることができますhere

0

[OK]をイムは、ここではいくつかの仮定を行うと、これは多くの可能性があるため、それらを説明します。

仮定1(接続文字列の問題)。あなたのローカルSQLサーバで実行されているデータベースのユーザ資格は、リモート "公開された"データベースの資格情報を使用してリモートデータベースに接続しようとすると、ウェブサイト構成ファイルのコピー。 (接続文字列)

アサーション2(パブリッシュ設定が正しくない)。ビジュアルスタジオ内の「公開」オプションを使用する場合は、私の知る限りウェブサイトを展開するだけですが、データベースを展開するように設定することもできます。

私はあなたのdevマシン上でテーブルを追加するなどの変更を加えてから、新しいテーブルがリモートサーバに表示されているかどうかを確認するために公開することをお勧めします。データベースを右クリックして "publish to provider"をクリックしてウィザードを実行すると、データベース全体をスクリプトファイルにプッシュし、リモートデータベースで手動で実行する傾向があります(最もクリーンなオプションのようです)。

仮定3(データベースはサーバー上にも存在しますか?)私はここで間違っているかもしれませんが、あなたがアプリケーションを公開し、データベースをサーバーに公開していないと言っていることから、素晴らしい黄色のサーバーエラーが発生します。

asumption 2で示唆されているようにデータベースが存在しない場合は、存在することを確認し、データベースを手動でプッシュします。

関連する問題