c#でxdocumentの最新の日付を選択する方法

user12104812

私はxmlファイルc#の初心者です。XMLから重複を削除し、コンボボックスで選択したアイテムを使用してプロセスを選択することにより、日付ごとに最新のもののみを保持しようとしています。

*The XML structure is:

    <Trace>
       <Log>
       <Process>NPP</Process>
       <LineNo>14</LineNo>
       <Date>12/3/2019 5:47:53 PM</Date>
       <Result>Passed</Result>
       </Log>
       <Log>
       <Process>WET</Process>
       <LineNo>14</LineNo>
       <Date>12/3/2019 5:50:54 PM</Date>
       <Result>Passed</Result>
       </Log>
       <Log>
       <Process>CPL</Process>
       <LineNo>14</LineNo>
       <Date>19/3/2019 5:14:07 AM</Date>
       <Result>Re-input</Result>
       </Log>
       <Log>
       <Process>CPL</Process>
       <LineNo>14</LineNo>
       <Date>19/3/2019 5:17:40 AM</Date>
       <Result>Re-input</Result>
       </Log>
       <Log>
       <Process>CPL</Process>
       <LineNo>14</LineNo>
       <Date>19/3/2019 6:27:43 AM</Date>
       <Result>Re-input</Result>
       </Log>
   </Trace>

プロセス「CPL」を選択した場合でも、データには3つの結果が表示されます。私が試したこと。*コードは次のとおりです。

    var xdoc1 = XDocument.Load(@"D:\DataDirectory\DataDirectory145\Product\149329.xml");

    var NewDoc1 = new XDocument(new XElement("Trace",from anEntry in xdoc1.Element("Trace").Elements("Log")
                                    where anEntry.Element("Process").Value.Contains(cmbProcess.SelectedItem.ToString())
                                    orderby anEntry.Element("Date").Value.ToString().First()
                                    select anEntry)
                                    );

        var myList = (from bEntry in NewDoc.Descendants("SerialNo")
                      from bEntry1 in NewDoc1.Descendants("Log")
                      select new
                      {
                          Product_Serial_No = Path.GetFileNameWithoutExtension(bEntry.Element("Product").Value),
                          PWB_Serial_No = Path.GetFileNameWithoutExtension(bEntry.Element("PWB").Value),
                          Process = bEntry1.Element("Process").Value,
                          Line_No = bEntry1.Element("LineNo").Value,
                          Date = bEntry1.Element("Date").Value,
                          Result = bEntry1.Element("Result").Value
                      }
                     ).ToList();

*出力には次のような最新の日付が表示されると思います。

| 製品| PWB | プロセス| 行番号| 日付| 結果|

| 149329 .. | 149329 .. | CPL | 14 | 2019/3/19 6:27:43 AM | 再入力|

アヌビスワン

エレメント日付の値でログディセンダントを(降順で)並べ替えて、最初のアイテムを選択できます。

例えば

   var result = xDoc.Descendants("Log")
                    .OrderByDescending(x=> DateTime.Parse(x.Element("Date").Value))
                    .Select(x=> 
                        new
                        {
                            Process = (string)x.Element("Process").Value,
                            Line = (string)x.Element("LineNo").Value,
                            Date = DateTime.Parse(x.Element("Date").Value),
                            Result = (string)x.Element("Result").Value
                        })
                    .First();

サンプル出力

ここに画像の説明を入力してください

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

mysqlで最新の日付を選択する方法

分類Dev

最新の日付を選択する

分類Dev

MySQLのLaravelのCreated_at列で最新の日付を選択する方法

分類Dev

MySql最新の日付でユーザーを選択する

分類Dev

MySQLのデータベースから最新の日付を選択する方法

分類Dev

postgresで最新の日付の行のみを選択します

分類Dev

SQL-特定の範囲内の各日付で利用可能な最新のレコードを選択する方法

分類Dev

MySQL:特定の日付より前の最新の日付のレコードを選択する方法

分類Dev

Rの行で最新の日付を選択します

分類Dev

DateTimeIndexで一意の日付の行を選択する方法

分類Dev

Pythonで最後の3つの日付を選択する方法

分類Dev

最新のcreated_at日付で行を列に選択するMySQLクエリ

分類Dev

日付と時刻で最新の行を選択します

分類Dev

Selenium WebDriverの日付ピッカーで特定の日付を選択する方法

分類Dev

SQLで時刻なしの日付を選択する方法

分類Dev

列で特定の日付形式を選択する方法

分類Dev

MATLABで特定の日付間隔を選択する方法

分類Dev

OracleSQLで個別の日付範囲を選択する方法

分類Dev

最新の日付と最新の時計を選択します

分類Dev

最新の日付の選択

分類Dev

最新の日時の行を選択する方法

分類Dev

一連の日付を選択する方法(日付に依存するサブクエリで選択)?

分類Dev

C#を使用してajaxcalendarextenderからSeleniumWebdriverで日付を選択する方法

分類Dev

C#で次の特定の日の日付を取得する方法

分類Dev

最新の日付のすべてのエントリを選択するSQL

分類Dev

別のテーブルに関連する最新の日付を選択する

分類Dev

MySQLで日付の前/後/後を条件付きで選択する方法は?

分類Dev

SQLで最新の日付の行を選択するにはどうすればよいですか?

分類Dev

MySqlで今日より前の最新の日付を選択するにはどうすればよいですか?

Related 関連記事

  1. 1

    mysqlで最新の日付を選択する方法

  2. 2

    最新の日付を選択する

  3. 3

    MySQLのLaravelのCreated_at列で最新の日付を選択する方法

  4. 4

    MySql最新の日付でユーザーを選択する

  5. 5

    MySQLのデータベースから最新の日付を選択する方法

  6. 6

    postgresで最新の日付の行のみを選択します

  7. 7

    SQL-特定の範囲内の各日付で利用可能な最新のレコードを選択する方法

  8. 8

    MySQL:特定の日付より前の最新の日付のレコードを選択する方法

  9. 9

    Rの行で最新の日付を選択します

  10. 10

    DateTimeIndexで一意の日付の行を選択する方法

  11. 11

    Pythonで最後の3つの日付を選択する方法

  12. 12

    最新のcreated_at日付で行を列に選択するMySQLクエリ

  13. 13

    日付と時刻で最新の行を選択します

  14. 14

    Selenium WebDriverの日付ピッカーで特定の日付を選択する方法

  15. 15

    SQLで時刻なしの日付を選択する方法

  16. 16

    列で特定の日付形式を選択する方法

  17. 17

    MATLABで特定の日付間隔を選択する方法

  18. 18

    OracleSQLで個別の日付範囲を選択する方法

  19. 19

    最新の日付と最新の時計を選択します

  20. 20

    最新の日付の選択

  21. 21

    最新の日時の行を選択する方法

  22. 22

    一連の日付を選択する方法(日付に依存するサブクエリで選択)?

  23. 23

    C#を使用してajaxcalendarextenderからSeleniumWebdriverで日付を選択する方法

  24. 24

    C#で次の特定の日の日付を取得する方法

  25. 25

    最新の日付のすべてのエントリを選択するSQL

  26. 26

    別のテーブルに関連する最新の日付を選択する

  27. 27

    MySQLで日付の前/後/後を条件付きで選択する方法は?

  28. 28

    SQLで最新の日付の行を選択するにはどうすればよいですか?

  29. 29

    MySqlで今日より前の最新の日付を選択するにはどうすればよいですか?

ホットタグ

アーカイブ