ハブラチ人への良い一日! 今日、私は偉大で力強いRuslishであなたを苦しめ続けます。 これは記事の続きです。
»
開発→アンマネージコードからの.Netクラスのクロスプラットフォーム使用。 またはLinuxのIDispatchの類似物»
開発→ネイティブVKを介した1Cでの.Netクラスのクロスプラットフォーム使用。 またはLinuxでCOMを置き換える»
ネイティブVKを介した1Cでの.Netクラスのクロスプラットフォーム使用。 またはLinux IIでCOMを置き換える»
.Net Native VKによる1Cの非同期プログラミングそれ以来、Linq拡張機能の使用を追加しました。 この記事では、コンポーネントの実際の使用について触れます。 つまり、OpenXMLとNetStandartを使用して、クロスプラットフォームでExcelファイルとWordファイルを処理します。
実際、この開発が考えられたもののために。 ソースは
ここから取得さ
れました 。 残念ながら、Nugetがないと、ライブラリをプロジェクトに接続できません。 ただし、CoreClrを介して接続できます。 OpenXMLの操作に関する参照情報は、
ここにあります 。
How am I ...(Open XML SDK)それでは、Excelページを読むことから始めましょう。 タスクは、データを値テーブルに変換することです。
Excel()
テーブルセルに関するデータを取得する方法をより詳細に検討してみましょう
()
次に、セルデータを含むTKをExcelページと同様の正常性値テーブルに変換する必要があります
(,,,,,)
次に、Wordファイルからのデータの読み取りに移りましょう。
GetPlainText( ) XML = XML; XML.();
生産性
向上ツールを使用すると非常に便利です。コードを
生成できます。5分でOfficeOpenXMLドキュメントを
生成できます。さらに、MS SQLとその他の両方(NoSQLを含む)のさまざまなデータベースの多くのプロバイダーがあります。
MS SQLへのアクセスの例を挙げます
SqlClient=(.("System.Data.SqlClient.dll")); SqlConnection=(SqlClient.GetType("System.Data.SqlClient.SqlConnection")); SqlCommand=(SqlClient.GetType("System.Data.SqlClient.SqlCommand")); connection =(.(SqlConnection.(),ConnectionString)); connection.Open(); = "Select .DESCR From sc84 where DESCR Like '%'+@+'%' |order by .DESCR"; command = (.(SqlCommand.(),,connection.())); Parameters=(command.Parameters); Parameters.AddWithValue("@", ""); dr = (command.ExecuteReader()); dr.Read() (dr.get_Item("")); ;
この場合、SqlDataReaderのDynamicObjectラッパーを作成し、次のように使用できます。
dr.Read() (dr.); ;
私の記事では、主に1Cに、NetStadartを使用したCOMのクロスプラットフォームの代替があることを伝えたいと思います。 しかし、残念なことに、これまでこのアプローチに興味がある人はいません。 Ruslishのみが注目を集めます。 誰かがCOMの置き換えに注意を引く方法についてアイデアを持っているなら、書いてください。 嬉しいだけです。
例とソースは
ここからダウンロードでき
ます 。