カテゴリー
Microsoft

【ASP.NET MVC5】今度は CSV インポートのサンプルプロジェクト作成チュートリアル

にて DB データをエクスポートする機能を紹介いたしました。

今回は、対となるインポート機能を開発いたします♪

インポート機能のポイント

こちらのシステムでインポート機能を考えます。ポイントは次の 2 点です。

  • CSV の 1 行に Parent とその Child を記入する。
  • インポートできる子ども (Child) は 2 人まで。

Parent 1-n Child という関係を持っております。

ですのでシステム上は、Parent は必ず 1 つですけれども、それに紐づく Child はいくつあっても問題ありません。

ですけれども、インポート機能におきましては子どもの数の最大数を制限しませんと CSV ファイルの仕様を固めることが難しくなります。

したがいまして、今回は Child の数を最大 2 つとし、それ以上登録したい場合はウェブブラウザから追加する、という運用方法を想定いたしました。

CSV インポート開発の流れ

に沿ってサンプルプロジェクトを作成したところからスタートです。

ソリューションおよびプロジェクト名は Sample3 といたしました。

  1. コントローラー CsvController.cs をスキャフォールディング作成
  2. アップロードファイルに対応するモデル CsvFile.cs を作成
  3. アップロードするファイルの種類を検証する属性クラス UploadFileAttribute の作成
  4. ビュー Import.cshtml の作成
  5. インポート処理を司るサービスクラス CsvImportService の作成
  6. テスト CSV ファイル作成と、インポートの確認