2016-12-22 6 views
1

私は単純化したいMVCアプリケーションのデータベースにXLSファイルのデータをインポートするプロセスを持っています。現時点で一時データベースにデータをインポートし、MVCで終了したときに名前を変更します

、プロセスチェック、データベース内の各テーブルの各レコードに対して、レコード場合:

  • 1 - 新しいものである - >次に挿入されます。
  • 2 - 変更されました - >データベースが更新されました。

このプロセスでは、データベースにあり、XLSファイルではないすべてのレコードが削除されます。

プロセスを簡略化するために、空のデータベースにXLSレコードを挿入してから、「スイッチ」して以前に参照したすべてのチェックを行う必要はありません。

<add name="DB" connectionString="Data Source=.\sqlexpress;Database=DB;UID=user;pwd=pass;MultipleActiveResultSets=True;" providerName="System.Data.SqlClient" /> 

とのDataContext:

public DbContext() : base("DB") 
    { 
     // Tells Entity Framework that we will handle the creation of the database manually for all the projects in the solution 
     Database.SetInitializer<DbContext>(null); 
    } 
+0

「データベース内の各テーブルの各レコードに対して」は怖いと聞きました。あなたは単一のテーブルを意味していました。 –

+0

こんにちは、ありがとう!はい、正しいです.XLSファイルには、アプリケーションの翌日の新しいデータがすべて含まれています。 – Patrick

答えて

1

使用

私の問題は、私は古いデータベースとクエリ文字列に基づいて新しい1間の貿易を管理する方法がわからないということです私はこのQuestionに書いた答えです。 接続文字列を変更するためにsecundaryコンストラクタなどを追加し、この新しいシステム設定を使用してすべての接続文字列のリストを格納し、actualDB、newDBという2つの変数を追加します。 これらのアクションを実行した後で、xmlファイルを開き、actualDBをnewDBの値に変更するコードを作成するだけで済みます(このコードもクリーンアップします)。

そして、その時点から、実際のDBの値を新しいものにリロードします。

+0

こんにちは、ありがとう!あなたの他の質問をチェックさせてください。 – Patrick

関連する問題