0

アプリに問題があります。フォームを使用すると、ユーザーは Excel ファイルを選択して、データベースのテーブルにデータを入力できます。データを保存する前に検証し、テーブルにいくつかの検証メッセージを表示します。また、エクセルのデータ全体を提示します。これが私の問題です:

  1. dbに保存する前にデータをどこに保管しますか? ユーザーに検証メッセージが表示されないと仮定しましょう。彼は SaveData ボタンをクリックします。何らかのアクションを実行しますが、ファイルのデータがありません。db も存在しないため、db からデータをプルすることはできません。最初のアクションではデータにアクセスできましたが、今は 2 番目のアクションです。
  2. 多くの検証メッセージで、ページングを使用したいと思います。同じ問題があります。ユーザーが NextPage ボタンをクリックすると、アクションに移動します。エクセルのデータはありません。
  3. ViewBag にデータを保持する必要がありますか? ここでajaxは私を助けることができますか? 1 つ忘れていました - Excel ファイル (1000 以上) には多くの行を含めることができます。gridmvc を使用してデータを表示します。

ご協力ありがとうございました。


更新: 検証に失敗した場合、ユーザーは Excel ファイルのデータを使用してデータベースにデータを入力することはできません。彼は、Excel ファイルのデータを手動で修正してから、再度使用する必要があります。

4

2 に答える 2

0

もし私があなたの場所なら - 私はサーバーにExcelをアップロードし、それを検証し、

  1. 検証が失敗した場合 - 検証ログをテキスト ファイルとしてユーザーに返します。

  2. 検証が成功した場合 - 追加の確認なしでファイルを db にアップロードします。

いずれの場合も、ユーザーはグリッドのエラーを修正できないため、有効な Excel が読み込まれる前に保存ボタンにアクセスできなくなります。

状況によっては、検証列が追加された Excel をユーザーに返すことができます。しかし、これがユーザーにとってより役立つかどうかはわかりません。

于 2014-11-11T15:30:06.567 に答える
0

ファイルをサーバーにロードすることをお勧めします。Excel ファイルの行と列を読み取り、データセットに読み込みます。エラーとしてデータセットに新しい列を追加し、行のエラーが見つかった場合はデータセットの各行を検証し、そのエラー列にプッシュしてフラグを true に設定します。

すべての行がトラバースされ、フラグが true の場合は、ユーザー インターフェイスにデータセットを返すか、Excel として戻します。

エラーがなければ、Excel を db に保存できます。

お役に立てれば。

于 2014-11-11T17:18:29.707 に答える