2012-03-19 7 views
0

こんにちは、私は次の接続文字列を使用して添付MDFファイルを使用して作業のアプリがあります。データベースエラー最初

<add name="SqlDataContext" connectionString="Data Source=.\SQLEXPRESS;Integrated Security=true;User Instance=true;AttachDBFilename=|DataDirectory|\WPCloudApp26.mdf;Initial Catalog=WPCloudApp26;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" /> 

を、私は、Windowsの携帯電話のクラウドアプリケーションテンプレートを使用していますし、私が最初に次の手順を実行するまで

すべてが、正常に動作します私のPC上で実行されているAzureストレージエミュレーターを持っている:

  1. 私はデータベースを表示したいので、私はApp_Dataに/ WPCloudApp26.mdfをダブルクリックフィルアプリケーションが実行されていないときにビジュアルスタジオを介して。私はそれをダブルクリックすると、dbはサーバーエクスプローラペインのデータ接続の下に開き、データベースとすべてのテーブルを見ることができます。これまでのすべてが良いです
  2. 私はdbを見ているので、右クリックして接続を閉じます - >接続を閉じる。
  3. 私はもう一度アプリケーションを実行したい、私はそれを実行するすべての地獄は緩んで壊れます。私は、次のエラーメッセージが表示されます:

1つまたは複数のファイルがデータベースのプライマリファイルと一致しません。 データベースを接続しようとしている場合は、正しいファイル で操作を再試行してください。これが既存のデータベースであれば、ファイルは である可能性があります。バックアップから復元する必要があります。\ r \ n データベース\ WPCloudApp26 \がログイン要求されていません。ログイン が失敗しました\ r \ nユーザー 'NT AUTHORITY \ NETWORK サービス'に失敗しました。ログファイル 'C:\ Users \ michael \ Documents \ Visual Studio 2010 \ Projects \ WPCloudApp26 \ WPCloudApp26 \ WPCloudApp26.Web \ App_Data \ WPCloudApp26.ldf ' は、プライマリファイルと一致しません。それは異なるデータベース からのものであるか、ログが以前に再構築されている可能性があります。

例外は、それが、関係なく、私は何をすべきか、私は再びアプリを実行することはできません方法にvar firstItem = context.SqlSampleData.FirstOrDefault();

ザッツがスローされます。唯一の助けとなるのは、別の名前の新しいソリューションを作成することなので、私は狂ってしまっています。

何が起こっているのですか?なぜ私は初めてビジュアルスタジオでデータベースを表示しようとした後に起こっているのですか?

編集 接続文字列の最初のカタログとmdfファイルを変更すると問題が解決することに気付きました。では、db名の残りの部分は保存されていますか?どのように私は古い残り物をきれいにすることができますか?

答えて

1

SQL Server Expressに添付された.MDFファイルを開こうとしないでください。おそらく.MDFとログファイルの整合性が損なわれるでしょう。 サーバーエクスプローラまたはSQL Server Management Studioを使用してSQL Server Expressサーバーに接続します。 (Express用の無料版もあります)

Visual Studioで.MDFを本当に開きたい場合は、最初にSQL Server ExpressからDBを切り離してください。

+0

ありがとう、どうしてこのようなことが起こったのか詳しく説明してください。なぜそれがそれを壊すことを知っている場合、Visual Studioを介してそれを表示するオプションがあります。私は本当にこのツールキットとVS – Michael

+0

別の質問を、私はハードドライブからプロジェクトを削除し、同じ名前を使用して、それはまだどこでもmdfファイルのメモリがない場合でも、それはdoesnt作業を開始するときに嫌いになり始めています。あなたはこれについて説明していますか? – Michael

+0

マイケル、あなたは本当にSQL Serverを... Serverと見なすべきです。そのため、開発者および/またはエンドユーザーとしてのあなたは、その内部およびそれが使用するファイルについて悩ますことはほとんどありません。開発者としてあなた自身が.MDFファイルを開こうと思っている理由はわかりません。それがあなたに与える恩恵は何ですか? SSMSを使用してクライアントとして接続することによって、すべての保守およびその他のタスクを実行できます。 –

関連する問題