LINQ or Lambda for two foreach query Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Linq in foreach with c#Simplify a complex LINQ querymaking this linq query fasterLINQ Group query - simplifyingLinq query performance improvementsRefactor foreach statement to LINQLinq to entities query for donor registrationsConvert Foreach Loop into Linq in C#Using Linq instead of multiple foreach loopsLinq query combining three tables

Is openssl rand command cryptographically secure?

How would you say "es muy psicólogo"?

Why do early math courses focus on the cross sections of a cone and not on other 3D objects?

Why datecode is SO IMPORTANT to chip manufacturers?

How does light 'choose' between wave and particle behaviour?

What are the main differences between Stargate SG-1 cuts?

Sally's older brother

Google .dev domain strangely redirects to https

Why is std::move not [[nodiscard]] in C++20?

Printing attributes of selection in ArcPy?

Special flights

What is the origin of 落第?

Is multiple magic items in one inherently imbalanced?

Did Mueller's report provide an evidentiary basis for the claim of Russian govt election interference via social media?

How to ternary Plot3D a function

What does 丫 mean? 丫是什么意思?

How much damage would a cupful of neutron star matter do to the Earth?

What does Turing mean by this statement?

Is there hard evidence that the grant peer review system performs significantly better than random?

How to force a browser when connecting to a specific domain to be https only using only the client machine?

My mentor says to set image to Fine instead of RAW — how is this different from JPG?

Getting out of while loop on console

Why weren't discrete x86 CPUs ever used in game hardware?

A term for a woman complaining about things/begging in a cute/childish way



LINQ or Lambda for two foreach query



Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern)
Announcing the arrival of Valued Associate #679: Cesar Manara
Unicorn Meta Zoo #1: Why another podcast?Linq in foreach with c#Simplify a complex LINQ querymaking this linq query fasterLINQ Group query - simplifyingLinq query performance improvementsRefactor foreach statement to LINQLinq to entities query for donor registrationsConvert Foreach Loop into Linq in C#Using Linq instead of multiple foreach loopsLinq query combining three tables



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








0












$begingroup$


The code I have written works fine, this inquiry being purely for educational purposes. I want to know how others would do this better and cleaner. I especially hate the way I use two for loops to get data. There has to be a more efficient way.



I have got a Document Name Table in my SQL database and Files in Content Folder.
I have got a Two list- ListOfFileNamesSavedInTheDB and ListOfFileNamesInTheFolder.



Basically, I am getting all file names saved in Database and checking is it exist in the Folder, if not delete file name from the database.



 var clientDocList = documentRepository.Documents.Where(c => c.ClientID == clientID).ToList();

if (Directory.Exists(directoryPath))

string[] fileList = Directory.GetFiles(directoryPath).Select(Path.GetFileName).ToArray();
bool fileNotExist = false;
foreach (var file in fileList)

foreach(var clientDoc in clientDocList)

if (clientDoc.DocFileName.Trim().ToUpper()==file.ToUpper().Trim())

fileNotExist = false;
break;



if (fileNotExist)

//Delete file name from Database











share







New contributor




AliAzra is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







$endgroup$


















    0












    $begingroup$


    The code I have written works fine, this inquiry being purely for educational purposes. I want to know how others would do this better and cleaner. I especially hate the way I use two for loops to get data. There has to be a more efficient way.



    I have got a Document Name Table in my SQL database and Files in Content Folder.
    I have got a Two list- ListOfFileNamesSavedInTheDB and ListOfFileNamesInTheFolder.



    Basically, I am getting all file names saved in Database and checking is it exist in the Folder, if not delete file name from the database.



     var clientDocList = documentRepository.Documents.Where(c => c.ClientID == clientID).ToList();

    if (Directory.Exists(directoryPath))

    string[] fileList = Directory.GetFiles(directoryPath).Select(Path.GetFileName).ToArray();
    bool fileNotExist = false;
    foreach (var file in fileList)

    foreach(var clientDoc in clientDocList)

    if (clientDoc.DocFileName.Trim().ToUpper()==file.ToUpper().Trim())

    fileNotExist = false;
    break;



    if (fileNotExist)

    //Delete file name from Database











    share







    New contributor




    AliAzra is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.







    $endgroup$














      0












      0








      0





      $begingroup$


      The code I have written works fine, this inquiry being purely for educational purposes. I want to know how others would do this better and cleaner. I especially hate the way I use two for loops to get data. There has to be a more efficient way.



      I have got a Document Name Table in my SQL database and Files in Content Folder.
      I have got a Two list- ListOfFileNamesSavedInTheDB and ListOfFileNamesInTheFolder.



      Basically, I am getting all file names saved in Database and checking is it exist in the Folder, if not delete file name from the database.



       var clientDocList = documentRepository.Documents.Where(c => c.ClientID == clientID).ToList();

      if (Directory.Exists(directoryPath))

      string[] fileList = Directory.GetFiles(directoryPath).Select(Path.GetFileName).ToArray();
      bool fileNotExist = false;
      foreach (var file in fileList)

      foreach(var clientDoc in clientDocList)

      if (clientDoc.DocFileName.Trim().ToUpper()==file.ToUpper().Trim())

      fileNotExist = false;
      break;



      if (fileNotExist)

      //Delete file name from Database











      share







      New contributor




      AliAzra is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.







      $endgroup$




      The code I have written works fine, this inquiry being purely for educational purposes. I want to know how others would do this better and cleaner. I especially hate the way I use two for loops to get data. There has to be a more efficient way.



      I have got a Document Name Table in my SQL database and Files in Content Folder.
      I have got a Two list- ListOfFileNamesSavedInTheDB and ListOfFileNamesInTheFolder.



      Basically, I am getting all file names saved in Database and checking is it exist in the Folder, if not delete file name from the database.



       var clientDocList = documentRepository.Documents.Where(c => c.ClientID == clientID).ToList();

      if (Directory.Exists(directoryPath))

      string[] fileList = Directory.GetFiles(directoryPath).Select(Path.GetFileName).ToArray();
      bool fileNotExist = false;
      foreach (var file in fileList)

      foreach(var clientDoc in clientDocList)

      if (clientDoc.DocFileName.Trim().ToUpper()==file.ToUpper().Trim())

      fileNotExist = false;
      break;



      if (fileNotExist)

      //Delete file name from Database









      c# linq





      share







      New contributor




      AliAzra is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.










      share







      New contributor




      AliAzra is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.








      share



      share






      New contributor




      AliAzra is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 2 mins ago









      AliAzraAliAzra

      11




      11




      New contributor




      AliAzra is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      AliAzra is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      AliAzra is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




















          0






          active

          oldest

          votes












          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "196"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );






          AliAzra is a new contributor. Be nice, and check out our Code of Conduct.









          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f217799%2flinq-or-lambda-for-two-foreach-query%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          AliAzra is a new contributor. Be nice, and check out our Code of Conduct.









          draft saved

          draft discarded


















          AliAzra is a new contributor. Be nice, and check out our Code of Conduct.












          AliAzra is a new contributor. Be nice, and check out our Code of Conduct.











          AliAzra is a new contributor. Be nice, and check out our Code of Conduct.














          Thanks for contributing an answer to Code Review Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          Use MathJax to format equations. MathJax reference.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f217799%2flinq-or-lambda-for-two-foreach-query%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          瀋陽號驅逐艦 目录 接收與服役 配置反潛直升機 武進三型性能升級 歷史 除役 參考資料 外部連結 导航菜单Taiwan Air Power海疆老兵-陽字號驅逐艦沿革World Navies Today: Taiwan (Republic of China)DD-839 USS POWER

          Memorizing the KeyboardThe Norwegian Foreman''If the B…''The Consonant EaterThe Cherry TreeElle Rend Le Coeur Plus AmoureuxFill in the blanks with the number in wordsState of the UnionFind the missing elementsCircuit DiagramWhat's the name of the game show?

          名間水力發電廠 目录 沿革 設施 鄰近設施 註釋 外部連結 导航菜单23°50′10″N 120°42′41″E / 23.83611°N 120.71139°E / 23.83611; 120.7113923°50′10″N 120°42′41″E / 23.83611°N 120.71139°E / 23.83611; 120.71139計畫概要原始内容臺灣第一座BOT 模式開發的水力發電廠-名間水力電廠名間水力發電廠 水利署首件BOT案原始内容《小檔案》名間電廠 首座BOT水力發電廠原始内容名間電廠BOT - 經濟部水利署中區水資源局