問題タブ [linq-to-excel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3547 参照

linq-to-excel - LinqToExcel外部テーブルが予期された形式ではありません

しばらくの間、LinqToExcelを使用してexelドキュメントを解析してきましたが、突然機能しなくなりました。

次のエラーが発生します。

外部テーブルが予期された形式ではありません。

なぜこれが起こっているのか考えはありますか?または修正する方法は?

私はバージョンLinqToExcel1.6.3を使用していましたが、問題が発生し始めたとき、最新バージョンのLinqToExcel1.6.6に更新しましたが役に立ちませんでした。

ダウンロードしているファイルが以前のバージョンよりも大幅に小さいことに気づきました。メモ帳で開くと、バイナリデータの中に[Content_Types].xmlが表示されます。したがって、データソースは同じ拡張子を持つxlsファイルのxml表現として保存されているようです。同じファイルをExcelで手動で開くと、次のようにポップアップ表示されます。

''を開こうとしているファイルは、ファイル拡張子で指定された形式とは異なる形式です。ファイルを開く前に、ファイルが信頼できるソースからのものであることを確認してください。今すぐファイルを開きますか?

[はい]をクリックしても、ファイルは開いたままで、以前のバージョンと同じように見えます。

0 投票する
1 に答える
718 参照

linq-to-excel - create a DataSet using LinqToExcel:

I am using LinqToExcel in my web application for getting WorksheetNames and columnnames, now i want to show some datas in gridview.Is there any method to create a DataSet using LinqToExcel.

0 投票する
2 に答える
4820 参照

linq-to-excel - LinqToExcelの空白行

LinqToExcelを使用して、ExcelデータをSQLServerに簡単にインポートしています。

すべて問題ありません。問題は1つだけです。フィールドはデータベーステーブルのフィールドに正確にマップされており、データベースではNULLではありません。

Excelファイルを入力します

そうは言っても、このExcelファイルのスクリーンショットを見ると、行3の下のいくつかの行は実際には空ではありません。スペースはありませんが、どういうわけかLinqToExcelもスペースを読み取ります。もちろん、EntityFrameworkによって例外がスローされ、フィールドをnullにすることはできません。

3から8980までの空白行をすべて選択して、削除する必要があります。そうして初めて、空白行をインポートしようとせずにLinqToExcelを使用できます。

問題を解決する方法はありますか?

ありがとう。

0 投票する
1 に答える
718 参照

c# - DISTINCT キーワード使用時の LinqToExcel エラー

LinqToExcel ライブラリを使用して、Excel ワークシートから個別の値を取得しようとしています。

エラーが発生し続けます

"{"クエリ式 '(MOD)' に構文エラー (演算子がありません)。"}"

私はすべてを試しましたが、この列から個別の値を引き出すことができないようです。

どんな援助でも大歓迎です。

前もって感謝します、

コードは次のとおりです。

0 投票する
1 に答える
2269 参照

asp.net-mvc-3 - linq to Excel の 64 ビット代替

Excel ファイルをインポートする ASP.NET MVC 3 アプリケーションがあります。

linq-to-excelライブラリを使用してこれを行うことができました。しかし、IIS にアプリケーションをデプロイしたときにエラーが発生しました。これは、IIS が 64 ビット システムで実行されていることが原因であることが判明しました。

32-bits applicationsこれは、IIS でプールのオプションを有効にすることで解決できます。

これはアプリケーションのパフォーマンスに影響しますか? linq-to-excelはいの場合、 64 ビットで動作する別の代替手段はありますか。

0 投票する
2 に答える
3643 参照

c# - 解析前の LinqToExcel での空白行のフィルタリング (変換/マッピング)

LinqToExcel を使用して Excel の行を C#/.NET プロジェクトのオブジェクトにマップしています。

データを変換するだけでなく、一部のデータが欠落している場合にユーザーに警告するように、変換関数に検証コードを入れました。例:

ただし、Excel が下部に追加することがある空の行によってこの検証がトリガーされることは望ましくありません ( LinqToExcel の空白行を参照)。

私の問題は、次のようなものを呼び出すときに生の行データにアクセスできないため、そこに記載されているソリューションを使用できないことです

これは、最初に変換が適用され、Where メソッドが変換結果に適用されるためです。

また、変換関数では、行内の他の値にアクセスできないため、それが単一の空のセル (間違い) であるか、行が完全に空であるかを確認できません。

変換を適用する前に空の行を除外することは可能ですか?

0 投票する
1 に答える
125 参照

shared-hosting - GoDaddy のような共有ホスティング環境で LinqToExcel を使用できますか

Excel ファイルの読み取りに LinqToExcel を使用する予定ですが、GoDaddy のような共有ホスティング環境で動作するかどうかわかりません。

0 投票する
2 に答える
1162 参照

c# - linq のリスト内のデータの 1 つ (おそらく複数) 列をスキップする方法

2 つの Excel ワークシート (を使用) からの入力を 2 つのリストに読み込んでLinq-To-Excelいます。ワークシートの 1 つに不要なデータ列があります (列名はわかっています)。ただし、両方のワークシートの他の列には、まったく同じタイプのデータが含まれています。

私の質問の最初の部分は次のとおりです:
select ステートメントでその unwamted 列のデータのみを除外するにはどうすればよいですか (他の 25 列ほどの列に select.column 名を書き込む必要はありませんか?私は以下の目的でこれを行うつもりです:

  1. 両方のリストを同じタイプにする
  2. 2 つのリストをマージする
  3. 最終的にはさらに多くのワークシートから読み取る必要があるため、このコード ブロックを呼び出しプロシージャに移動する可能性があります。

    /li>

私はc#とlinqが初めてです。だから私の無知を許してください:-)

私の質問の 2 番目の部分は次
のとおりです。私が抽出している上記のデータは少し太っています (100,000 行から 300,000 行まで変化します)。for ループを使用して、上記のリストに対して (1000 ~ 4000 回の範囲で) linq クエリを繰り返し実行する必要があります。パフォーマンスに大きな負担がかかるため、これを実装するより良い方法はありますか。


EDIT_1:
入力ファイルについて:

  1. StaticResults ファイルには 28 の列があります (STC クラスには 28 のプロパティがあります)
  2. DynamicResults ファイルには 29 列 (静的と同じプロパティ/列名を持つ 28 列と、必須ではない追加のプロパティが 1 つあります) があります (DYN は STC から派生したクラスです)。
0 投票する
1 に答える
1955 参照

.net - LinqToExcel を使用したデータのインポート

IList(of FinancialResults)VB.NET を使用してコレクションにインポートしようとしている XLSX スプレッドシートがあります。

スプレッドシートは以下の形式で、セルを適切な列からクラスにマップする必要があります。

スプレッドシート

スプレッドシート

モデル

コード

私の最初の見解は、 NuGet 経由でインストールしたLinqToExcelを使用することでしたが、ライブラリを使用してデータをロードする際に問題が発生しました。Web サイトのドキュメントを読んだところ、この機能はAddMappingメソッドで提供できることがわかりました。

次に、以下の Linq ステートメントを使用してデータをロードします。

結果

コードはコンパイルおよび実行されますが、スプレッドシートから結果が読み込まれません。FinacialResults クラスのすべてのインスタンスに 0.0 が入力されます。

ここに画像の説明を入力

列マッピングに問題がある可能性があると考えて、ExcelQueryFactory使用中の列コレクションを照会しました

以下を返しました。

ここに画像の説明を入力

これらを反映するように列のマッピングを変更しましたが、結果はすべてのインスタンスで 0.0 として返されます。

質問

このスプレッドシートの形式を考えると、これは LinqToExcel を使用して可能ですか? もしそうなら、私は何を間違っていますか?WorksheetRangeメソッドを使用するか、各セルを個別にロードする必要がありますか?

別の好ましい代替手段はありますか?