<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
  <channel>
    <title>CodeProject Latest postings for .NET (Core and Framework)</title>
    <link>https://www.codeproject.com</link>
    <description>Latest postings for .NET (Core and Framework) from CodeProject</description>
    <language>en-us</language>
    <image>
      <title>CodeProject Latest postings for .NET (Core and Framework)</title>
      <url>https://www.codeproject.com/App_Themes/Std/Img/logo100x30.gif</url>
      <link>https://www.codeproject.com</link>
      <width>100</width>
      <height>30</height>
      <description>CodeProject</description>
    </image>
    <copyright>Copyright  CodeProject, 1999-2024</copyright>
    <webMaster>Webmaster@codeproject.com (Webmaster)</webMaster>
    <lastBuildDate>Tue, 23 Apr 2024 01:02:00 GMT</lastBuildDate>
    <ttl>20</ttl>
    <generator>C# Hand-coded goodness</generator>
    <item>
      <title>HOW TO ANSWER A QUESTION</title>
      <description>Apologies for the shouting but this is important.&lt;br /&gt;
&lt;br /&gt;
When answering a question please:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Read the question carefully&lt;/li&gt;&lt;li&gt;Understand that English isn't everyone's first language so be lenient of bad spelling and grammar&lt;/li&gt;&lt;li&gt;If a question is poorly phrased then either ask for clarification, ignore it, or mark it down. &lt;b&gt;Insults are not welcome&lt;/b&gt;&lt;/li&gt;&lt;li&gt;If the question is inappropriate then click the 'vote to remove message' button&lt;/li&gt;&lt;/ol&gt;Insults, slap-downs and sarcasm aren't welcome. Let's work to help developers, not make them feel stupid. &lt;br /&gt;
&lt;br /&gt;
&lt;div class="ForumSig"&gt;cheers,&lt;br /&gt;
Chris Maunder&lt;br /&gt;
&lt;br /&gt;
The Code Project Co-founder&lt;br /&gt;
Microsoft C++ MVP&lt;/div&gt;</description>
      <author>Chris Maunder</author>
      <link>https://www.codeproject.com/Messages/3122380/HOW-TO-ANSWER-A-QUESTION</link>
      <pubDate>Thu, 16 Jul 2009 13:09:00 GMT</pubDate>
      <guid>3_3122380</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>How to get an answer to your question</title>
      <description>For those new to message boards please try to follow a few simple rules when posting your question.&lt;ol&gt;&lt;li&gt;&lt;b&gt;Choose the correct forum for your message&lt;/b&gt;. Posting a VB.NET question in the C++ forum will end in tears.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;&lt;b&gt;Be specific!&lt;/b&gt; Don't ask "can someone send me the code to create an application that does 'X'. Pinpoint exactly what it is you need help with.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;Keep the subject line brief, but descriptive. eg "File Serialization problem"&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;Keep the question as brief as possible. If you have to include code, include the smallest snippet of code you can.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;Be careful when including code that you haven't made a typo. Typing mistakes can become the focal point instead of the actual question you asked.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;&lt;b&gt;Do not remove or empty a message&lt;/b&gt; if others have replied. Keep the thread intact and available for others to search and read. If your problem was answered then edit your message and add "[Solved]" to the subject line of the original post, and cast an approval vote to the one or several answers that really helped you.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;If you are posting source code with your question, place it inside &amp;lt;pre&amp;gt;&amp;lt;/pre&amp;gt; tags. We advise you also check the "Encode "&amp;lt;" (and other HTML) characters when pasting" checkbox before pasting anything inside the PRE block, and make sure "Use HTML in this post" check box is checked.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;Be courteous and DON'T SHOUT. Everyone here helps because they enjoy helping others, not because it's their job.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;Please do not post links to your question into an unrelated forum such as the lounge. It will be deleted. Likewise, do not post the same question in more than one forum.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;Do not be abusive, offensive, inappropriate or harass anyone on the boards. Doing so will get you kicked off and banned. Play nice.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;If you have a school or university assignment, assume that your teacher or lecturer is also reading these forums. &lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;No advertising or soliciting.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;&lt;li&gt;We reserve the right to move your posts to a more appropriate forum or to delete anything deemed inappropriate or illegal.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;
&lt;div class="signature"&gt;cheers,&lt;br /&gt;
Chris Maunder&lt;br /&gt;
&lt;br /&gt;
The Code Project Co-founder&lt;br /&gt;
&lt;div class="SmallText"&gt;Microsoft C++ MVP&lt;/div&gt;&lt;/div&gt;</description>
      <author>Chris Maunder</author>
      <link>https://www.codeproject.com/Messages/3122367/How-to-get-an-answer-to-your-question</link>
      <pubDate>Thu, 16 Jul 2009 13:05:00 GMT</pubDate>
      <guid>3_3122367</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Remote debugging on Raspberry Pi in Visual Studio Code.</title>
      <description>I have a Raspberry PI (Linux-arm) with sense sense hat, being accessed on Windows 11 via ssh. The source code is on the Raspberry pi and I have the Visual Studio Code (latest) loaded on the Windows 11 machine. I have the remote SSH and remote SSH editing extensions loaded in VS. &lt;br /&gt;
&lt;br /&gt;
The version of dotnet on the Pi is &lt;br /&gt;
.NET SDK:&lt;br /&gt;
 Version:   7.0.100&lt;br /&gt;
 Commit:    e12b7af219&lt;br /&gt;
&lt;br /&gt;
Runtime Environment:&lt;br /&gt;
 OS Name:     raspbian&lt;br /&gt;
 OS Version:  11&lt;br /&gt;
 OS Platform: Linux&lt;br /&gt;
 RID:         linux-arm&lt;br /&gt;
 Base Path:   /home/pi/.dotnet/sdk/7.0.100/&lt;br /&gt;
&lt;br /&gt;
Host:&lt;br /&gt;
  Version:      7.0.0&lt;br /&gt;
  Architecture: arm&lt;br /&gt;
  Commit:       d099f075e4&lt;br /&gt;
&lt;br /&gt;
.NET SDKs installed:&lt;br /&gt;
  7.0.100 [/home/pi/.dotnet/sdk]&lt;br /&gt;
&lt;br /&gt;
.NET runtimes installed:&lt;br /&gt;
  Microsoft.AspNetCore.App 7.0.0 [/home/pi/.dotnet/shared/Microsoft.AspNetCore.App]&lt;br /&gt;
  Microsoft.NETCore.App 7.0.0 [/home/pi/.dotnet/shared/Microsoft.NETCore.App]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I can build and run the application on the Raspberry PI, with no problems. The part I am missing is to be able to debug the application remotely. &lt;br /&gt;
&lt;br /&gt;
I have gone through a few examples on the net, but nothing seems to be helpfull.&lt;br /&gt;
&lt;br /&gt;
Any suggestions ?&lt;br /&gt;
Thanks</description>
      <author>Jerry Walter 2024</author>
      <link>https://www.codeproject.com/Messages/5998124/Remote-debugging-on-Raspberry-Pi-in-Visual-Studio</link>
      <pubDate>Tue, 23 Apr 2024 01:02:00 GMT</pubDate>
      <guid>3_5998124</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>hi please help me with a filter on view</title>
      <description>hi have a table with email history that when i click on each subject it call external link.&lt;br /&gt;
&lt;br /&gt;
my problem is how can i filter my record per Id, because on same table they are a more than same username but with different value cells.&lt;br /&gt;
&lt;br /&gt;
on &lt;div class='pre-lang' id='premain457790'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode457790' class='copy-code' data-index='457790' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre457790' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
@Html.Raw(rec.MailBodyHtml)&lt;/pre&gt; on debug mode i see 5 record for username that's fine but i want filter with primary key of the table on sql.&lt;br /&gt;
&lt;br /&gt;
note the primary key on table have no relation with other id .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
this is my code on view side : &lt;br /&gt;
&lt;br /&gt;
&lt;div class='pre-lang' id='premain748170'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode748170' class='copy-code' data-index='748170' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre748170' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
&amp;lt;div&amp;gt;
    &amp;lt;div &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;container"&lt;/span&gt;&amp;gt;
        &amp;lt;div &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;row"&lt;/span&gt;&amp;gt;
            &amp;lt;div &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;col-md-12"&lt;/span&gt;&amp;gt;
                &amp;lt;div &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;panel panel-default"&lt;/span&gt;&amp;gt;
                    &amp;lt;div style=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;text-align:right;padding: 5px 5px 0 0;font-size: 14px;"&lt;/span&gt;&amp;gt;
                        
                        &amp;lt;a href=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;#"&lt;/span&gt; &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;text-decoration-none"&lt;/span&gt; onclick=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;printDivContent();"&lt;/span&gt;&amp;gt;
                            Imprimer 
                            
                        &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;a&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;

                    &amp;lt;div id=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;printContent"&lt;/span&gt;&amp;gt;
                        @foreach (&lt;span class="code-keyword"&gt;var&lt;/span&gt; rec &lt;span class="code-keyword"&gt;in&lt;/span&gt; Model)

                        {
                            @Html.Raw(rec.MailBodyHtml)
                        }
                    &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class='pre-lang' id='premain819402'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode819402' class='copy-code' data-index='819402' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre819402' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
&amp;lt;div &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;tab-content"&lt;/span&gt;&amp;gt;
    &amp;lt;!--Start Historique Email--&amp;gt;
    &amp;lt;div id=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;Historique_Email"&lt;/span&gt; &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;tab-pane active"&lt;/span&gt;&amp;gt;
        &amp;lt;div &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;sf-bs-data-table"&lt;/span&gt;&amp;gt;
            &amp;lt;div &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;table-responsive"&lt;/span&gt;&amp;gt;
                &amp;lt;table &lt;span class="code-keyword"&gt;class&lt;/span&gt;=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;table table-striped table-bordered example-dt-table"&lt;/span&gt; style=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;width:100%"&lt;/span&gt;&amp;gt;
                    &amp;lt;thead&amp;gt;
                        &amp;lt;tr&amp;gt;
                            &amp;lt;th&amp;gt;Date&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;th&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                            &amp;lt;th&amp;gt;Sujet&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;th&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                            &amp;lt;th&amp;gt;Nombres&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;th&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                            &amp;lt;th&amp;gt;Nom&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;th&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                            &amp;lt;th&amp;gt;Email&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;th&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                            &amp;lt;th&amp;gt;Type&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;th&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                        &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;tr&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;thead&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                    &amp;lt;tbody&amp;gt;
                        @{
                            &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;foreach (var rec in Model.ReceivedAlerts.OrderBy(c =&amp;gt; c.Date))&lt;/span&gt;
                            &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;foreach (var rec in Model.ReceivedAlerts.Where(t =&amp;gt; t.Email != null))&lt;/span&gt;
                            &lt;span class="code-keyword"&gt;foreach&lt;/span&gt; (&lt;span class="code-keyword"&gt;var&lt;/span&gt; rec &lt;span class="code-keyword"&gt;in&lt;/span&gt; Model)

                            {
                                &amp;lt;tr&amp;gt;
                                    &amp;lt;td&amp;gt;@rec.Date.ToString(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;dd-MM-yyyy hh:ss"&lt;/span&gt;)&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;td&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                                    &amp;lt;td&amp;gt;
                            
                                    &amp;lt;a href=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;@Url.Action("&lt;/span&gt;BodyHtml&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;, "&lt;/span&gt;Entreprise&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;, new { Id = rec.UserId })"&lt;/span&gt; target=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;_blank"&lt;/span&gt;&amp;gt; @rec.MailSubject &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;a&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                                    &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;td&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                                    &amp;lt;td&amp;gt;@rec.Nb&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;td&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                                    &amp;lt;td&amp;gt;@rec.NomAlerte&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;td&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                                    &amp;lt;td&amp;gt;@rec.Email&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;td&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                                    &amp;lt;td&amp;gt;@rec.TypeAlerte&lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;td&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                                &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;tr&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                            }
                        }
                    &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;tbody&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;table&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="code-keyword"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="code-leadattribute"&gt;div&lt;/span&gt;&lt;span class="code-keyword"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;</description>
      <author>Chrayet Mahdi</author>
      <link>https://www.codeproject.com/Messages/5991733/hi-please-help-me-with-a-filter-on-view</link>
      <pubDate>Sat, 09 Mar 2024 17:13:00 GMT</pubDate>
      <guid>3_5991733</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Advice on a product to convert PDF to TIFF or JPEG.</title>
      <description>I want to convert PDF files into an image file that can be inserted into the body of an email.  SO instead of attaching an email, the images will be in the body.&lt;br /&gt;
&lt;br /&gt;
My question to you is, can you recommend a product for doing this task?&lt;br /&gt;
Have you had a negative experience with any product you think I should avoid?&lt;br /&gt;
Thank you for your advice.&lt;br /&gt;
&lt;div class="signature"&gt;Phil McG&lt;/div&gt;</description>
      <author>PhilMcGahan</author>
      <link>https://www.codeproject.com/Messages/5990710/Advice-on-a-product-to-convert-PDF-to-TIFF-or-JPEG</link>
      <pubDate>Sat, 02 Mar 2024 14:00:00 GMT</pubDate>
      <guid>3_5990710</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>C#, WPF project</title>
      <description>I have Report automation tool created in WPF and the code is written in C# in visual stdudio. I have many reports in my RA tool. Now I want to create Pitchbook from these reports. Say I already have a class called ABC which runs a report called ABC and has 3 slides. I want to create something like to pick 2 slides from this report and 2 slides from another report like xyz and create a book. This process should be automated. Please let me know how can I do this</description>
      <author>Member 16211985</author>
      <link>https://www.codeproject.com/Messages/5990168/Csharp-WPF-project</link>
      <pubDate>Wed, 28 Feb 2024 13:50:00 GMT</pubDate>
      <guid>3_5990168</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Form Cancel Property paired up with Button DialogResult Property is Diabolical!</title>
      <description>I decided to "upgrade" my dialog box forms with Accept and Cancel buttons properties!  Now my dialog boxes were more user friendly.  &lt;br /&gt;
&lt;br /&gt;
A week later I began testing on one of these dialog forms which contained a lot of buttons and content, but I ran into a bit of a pickle.  One of the many buttons had a click event coded to open a 2nd level modal dialog and when this 2nd dialog box closed the parent dialog it was invoked from closed as well.  I couldn't figure out why for the longest time but luckily found the answer on the www.&lt;br /&gt;
&lt;br /&gt;
When you set a form's "Cancel" property to a button the genius behind VS sets that button's "DialogResult" property to DialogResult.Cancel.  When the button is clicked no matter what happens inside the buttons click handler the parent form will close with a DialogResult.Cancel.&lt;br /&gt;
&lt;br /&gt;
If you copy a Cancel button with DialogResult property set to DialogResult.Cancel and paste it on a form the genius behind VS copies the DialogResult property as well, you now have two buttons with DialogResult.Cancel on your form, no warnings of course, it's what you intended to do!&lt;br /&gt;
&lt;br /&gt;
I didn't even know buttons had the "DialogResult" property and that it could be used to automatically close a form, obviously it was there all along but I skimmed past it and never tried to experiment with it.&lt;br /&gt;
&lt;br /&gt;
Funny thing is the form's Accept property does not change the OK button's DialogResult property to OK when that button is selected.&lt;br /&gt;
&lt;br /&gt;
I suppose this feature helps eliminate the need to code Cancel button click events, but I'm so used to doing it anyway I probably won't bother using it in the future.&lt;br /&gt;
&lt;br /&gt;
Any idea when this feature was added?  Was it there all along?</description>
      <author>Brian L Hughes</author>
      <link>https://www.codeproject.com/Messages/5990089/Form-Cancel-Property-paired-up-with-Button-DialogR</link>
      <pubDate>Wed, 28 Feb 2024 04:04:00 GMT</pubDate>
      <guid>3_5990089</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Gantt chart for management app c# Windows Forms</title>
      <description>&lt;div class='pre-lang' id='premain269355'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode269355' class='copy-code' data-index='269355' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre269355' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
Hello all.

I need to create a gantt chart &lt;span class="code-keyword"&gt;using&lt;/span&gt; data &lt;span class="code-sdkkeyword"&gt;from&lt;/span&gt; employee table. It need to display the period of time, start date, end date and the name of the task. 

Can someone help me with &lt;span class="code-keyword"&gt;this&lt;/span&gt;?

(Please, i`m &lt;span class="code-keyword"&gt;in&lt;/span&gt; the last year of college and i need to finish it &lt;span class="code-keyword"&gt;in&lt;/span&gt; time )&lt;/pre&gt;</description>
      <author>Ionut Ciocan</author>
      <link>https://www.codeproject.com/Messages/5988919/Gantt-chart-for-management-app-csharp-Windows-Form</link>
      <pubDate>Tue, 20 Feb 2024 23:17:00 GMT</pubDate>
      <guid>3_5988919</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Visual Studio 2022 and Angular Language Service</title>
      <description>Sorry, couldn't find a more appropriate forum to post this.&lt;br /&gt;
&lt;br /&gt;
We have a Angular/.NET Core app that we are attempting to upgrade to .NET 8.  I have the Angular Language Service installed and working with no problem in VS2019.  With VS2022, not so much.  Every time I load any project with Angular code I get this error, &lt;br /&gt;
&lt;br /&gt;
"Task Failed - Activating language client Angular Language Service Extension: The JSON-RPC connection with the remote party was lost before the request could complete."&lt;br /&gt;
&lt;br /&gt;
I've tried everything I can think of, including creating a ticket with MS.  Surprisingly, they actually attempted to help resolve the problem.  We renamed the cache folder, ran VS as admin, reset all options, disabled the extension auto update, repaired VS2022 (appropriate reboots), checked the Microsoft.VisualStudio.Default.err file, checked the log files (%temp%\VSLogs), uninstalled/reinstalled VS2022 (cleared temp files, rebooted), insure Node.js is installed, insure Win11SDK (both) are installed.&lt;br /&gt;
&lt;br /&gt;
I'm at a complete loss as is everyone else.  Other devs working on Angular/.NET projects in VS2022 do not have this issue.  I was seeing this error before attempting to upgrade anything on the solution.  Oddly, break points in TypeScript files work, but viewing the value of TypeScript variables does not work nor does F12 in TypeScript code.  I'd rather get this working in VS2022 instead of using VS Code for Angular development and VS2022 for .NET, that's just ugly and messy.&lt;br /&gt;

&lt;div class="signature"&gt;"...JavaScript could teach Dyson how to suck." -- Nagy Vilmos&lt;/div&gt;</description>
      <author>Z.C.M.</author>
      <link>https://www.codeproject.com/Messages/5986736/Visual-Studio-2022-and-Angular-Language-Service</link>
      <pubDate>Thu, 08 Feb 2024 22:19:00 GMT</pubDate>
      <guid>3_5986736</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>How to refer to the AspNetUser table(which is the default table created upon using AspNetCore.Identity;) in my Job Table in .NET Core 6</title>
      <description>&lt;div class='pre-lang' id='premain699678'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode699678' class='copy-code' data-index='699678' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre699678' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
I have created tables &lt;span class="code-keyword"&gt;using&lt;/span&gt; ASP.NET Core Identity. I need to refer my `AspNetUser` table to my `Job` table. I have created a `CustomIdentity` &lt;span class="code-keyword"&gt;class&lt;/span&gt; which inherits &lt;span class="code-sdkkeyword"&gt;from&lt;/span&gt; `IdentityUser`.

This &lt;span class="code-keyword"&gt;is&lt;/span&gt; my code:

    &lt;span class="code-keyword"&gt;using&lt;/span&gt; Microsoft.AspNetCore.Identity;

    &lt;span class="code-keyword"&gt;namespace&lt;/span&gt; InventoryManagement.Models
    {
        &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;class&lt;/span&gt; CustomIdentity :IdentityUser
        {
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;string&lt;/span&gt;  IsEngineer { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;string&lt;/span&gt;  authpassword { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
        }
    }

And &lt;span class="code-keyword"&gt;this&lt;/span&gt; &lt;span class="code-keyword"&gt;is&lt;/span&gt; my `DbContext` &lt;span class="code-keyword"&gt;class&lt;/span&gt; &lt;span class="code-keyword"&gt;for&lt;/span&gt; `IdentityDbContext`:

    &lt;span class="code-keyword"&gt;using&lt;/span&gt; Microsoft.AspNetCore.Identity;
    &lt;span class="code-keyword"&gt;using&lt;/span&gt; Microsoft.AspNetCore.Identity.EntityFrameworkCore;
    &lt;span class="code-keyword"&gt;using&lt;/span&gt; Microsoft.EntityFrameworkCore;

    &lt;span class="code-keyword"&gt;namespace&lt;/span&gt; InventoryManagement.Models.Data
    {
        &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;class&lt;/span&gt; AuthDbContext : IdentityDbContext&amp;lt;CustomIdentity&amp;gt;
        {
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; AuthDbContext(DbContextOptions&amp;lt;AuthDbContext&amp;gt; options) :&lt;span class="code-keyword"&gt;base&lt;/span&gt;(options)
            {
            }
        }
    }

`ASPNETUser` table got created and I am able to insert values &lt;span class="code-sdkkeyword"&gt;into&lt;/span&gt; it &lt;span class="code-keyword"&gt;using&lt;/span&gt; `UserManager` to register users. I need to refer &lt;span class="code-keyword"&gt;this&lt;/span&gt; user &lt;span class="code-keyword"&gt;in&lt;/span&gt; my Job table. And here &lt;span class="code-keyword"&gt;is&lt;/span&gt; my code &lt;span class="code-keyword"&gt;for&lt;/span&gt; `Jobdbcontext` &lt;span class="code-sdkkeyword"&gt;where&lt;/span&gt; I declare all my other tables:

    &lt;span class="code-keyword"&gt;using&lt;/span&gt; Microsoft.EntityFrameworkCore;

    &lt;span class="code-keyword"&gt;namespace&lt;/span&gt; InventoryManagement.Models.Data
    {
        &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;class&lt;/span&gt; JobDBcontext : DbContext
        {
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; JobDBcontext(DbContextOptions&amp;lt;JobDBcontext&amp;gt; options) : &lt;span class="code-keyword"&gt;base&lt;/span&gt;(options) 
           {
           }

           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;Job&amp;gt; Jobs { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;Customer&amp;gt; Customers { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;JobType&amp;gt; Jobtype { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;ManufacturingBay&amp;gt; Manufacturingbay { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;ProjectCategory&amp;gt; Projectcategory { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;Currency&amp;gt; Currency { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;Category&amp;gt; ItemCategory { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;Budget&amp;gt; ItemBudget { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;SubCategory&amp;gt; ItemSubcategory { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;ItemMaster&amp;gt; ItemMaster { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;Bom&amp;gt; Bom { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;Test&amp;gt; Test { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;UOM&amp;gt; UomMaster { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;PR&amp;gt; PR { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;PRDetails&amp;gt; PRDetails { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;Supplier&amp;gt; Supplier { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;Purchase&amp;gt; Purchase { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
           &lt;span class="code-keyword"&gt;public&lt;/span&gt; DbSet&amp;lt;PurchaseDetails&amp;gt; PurchaseDetails { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }

           &lt;span class="code-keyword"&gt;protected&lt;/span&gt; &lt;span class="code-keyword"&gt;override&lt;/span&gt; &lt;span class="code-keyword"&gt;void&lt;/span&gt; OnModelCreating(ModelBuilder modelBuilder)
           {
                &lt;span class="code-keyword"&gt;if&lt;/span&gt; (modelBuilder == &lt;span class="code-keyword"&gt;null&lt;/span&gt;)
                {
                    &lt;span class="code-keyword"&gt;throw&lt;/span&gt; &lt;span class="code-keyword"&gt;new&lt;/span&gt; ArgumentNullException(&lt;span class="code-keyword"&gt;nameof&lt;/span&gt;(modelBuilder));
                }

                modelBuilder.Entity&amp;lt;JobType&amp;gt;().HasKey(jt =&amp;gt; jt.Jobtypeid);
                modelBuilder.Entity&amp;lt;ProjectCategory&amp;gt;().HasKey(jt =&amp;gt; jt.Pid);
                modelBuilder.Entity&amp;lt;Currency&amp;gt;().HasKey(jt =&amp;gt; jt.cid);
                modelBuilder.Entity&amp;lt;Bom&amp;gt;().HasKey(jt =&amp;gt; jt.BID);

                modelBuilder.Entity&amp;lt;Budget&amp;gt;()
                            .HasKey(b =&amp;gt; b.ID);

                modelBuilder.Entity&amp;lt;Category&amp;gt;()
                    .HasKey(c =&amp;gt; c.CategoryId);
                modelBuilder.Entity&amp;lt;SubCategory&amp;gt;()
                    .HasKey(s =&amp;gt; s.SubCategoryId);
                 modelBuilder.Entity&amp;lt;ItemMaster&amp;gt;()
                    .HasKey(i =&amp;gt; i.itemid);
                modelBuilder.Entity&amp;lt;UOM&amp;gt;()
                  .HasKey(i =&amp;gt; i.uid);
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt; Configure relationships&lt;/span&gt;
                modelBuilder.Entity&amp;lt;Budget&amp;gt;()
              .HasMany(b =&amp;gt; b.categories)
              .WithOne(c =&amp;gt; c.Budget)
              .OnDelete(DeleteBehavior.Cascade);
                modelBuilder.Entity&amp;lt;Category&amp;gt;()
                    .HasMany(c =&amp;gt; c.SubCategories)
                    .WithOne(i =&amp;gt; i.category)
                     .OnDelete(DeleteBehavior.Cascade);

                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;  modelBuilder.Entity&amp;lt;SubCategory&amp;gt;()&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;      .HasMany(s =&amp;gt; s.ItemMasters)&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;      .WithOne(i =&amp;gt; i.subcategory)&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;      .HasForeignKey(i =&amp;gt; i.category)&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;      .OnDelete(DeleteBehavior.Cascade);&lt;/span&gt;

                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt; Other configurations for your entity can go here&lt;/span&gt;

                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;modelBuilder.Entity&amp;lt;PR&amp;gt;()&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;              .HasKey(p =&amp;gt; p.Prid);&lt;/span&gt;

                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;modelBuilder.Entity&amp;lt;PRDetails&amp;gt;()&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;    .HasKey(d =&amp;gt; d.Prtblid);&lt;/span&gt;

                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;modelBuilder.Entity&amp;lt;PRDetails&amp;gt;()&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;    .Property(d =&amp;gt; d.Prid);  // Ensure Prid property is properly configured, adjust as needed&lt;/span&gt;

                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;modelBuilder.Entity&amp;lt;PRDetails&amp;gt;()&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;    .HasOne(d =&amp;gt; d.PR)&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;    .WithMany(p =&amp;gt; p.PRDetails)&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;    .HasForeignKey(d =&amp;gt; d.Prid)&lt;/span&gt;
                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt;    .OnDelete(DeleteBehavior.Restrict); // or specify other actions as needed&lt;/span&gt;

                &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt; Additional configurations for other entities and relationships&lt;/span&gt;

                modelBuilder.Entity&amp;lt;PR&amp;gt;()
                  .HasKey(p =&amp;gt; p.Prid);

                modelBuilder.Entity&amp;lt;PRDetails&amp;gt;()
                    .HasKey(d =&amp;gt; d.PrDetailId);

                modelBuilder.Entity&amp;lt;PRDetails&amp;gt;()
                    .HasOne(d =&amp;gt; d.PR)
                    .WithMany(p =&amp;gt; p.PRDetails)
                    .HasForeignKey(d =&amp;gt; d.Prid)
                    .OnDelete(DeleteBehavior.NoAction); &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt; Change this to NoAction or other options&lt;/span&gt;

                modelBuilder.Entity&amp;lt;PRDetails&amp;gt;()
                    .HasOne(d =&amp;gt; d.Bom)
                    .WithMany() &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt; Assuming Bom doesn&amp;#39;t have a navigation property back to PRDetails&lt;/span&gt;
                    .HasForeignKey(d =&amp;gt; d.Bomid)
                    .OnDelete(DeleteBehavior.Cascade);

                &lt;span class="code-keyword"&gt;base&lt;/span&gt;.OnModelCreating(modelBuilder);

                modelBuilder.Entity&amp;lt;Purchase&amp;gt;()
                 .HasKey(p =&amp;gt; p.POID);

                modelBuilder.Entity&amp;lt;PurchaseDetails&amp;gt;()
                    .HasKey(d =&amp;gt; d.potblid);

                modelBuilder.Entity&amp;lt;PurchaseDetails&amp;gt;()
                    .HasOne(d =&amp;gt; d.Purchase)
                    .WithMany(p =&amp;gt; p.PurchaseDetails)
                    .HasForeignKey(d =&amp;gt; d.POID)
                    .OnDelete(DeleteBehavior.NoAction); &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt; Change this to NoAction or other options&lt;/span&gt;

                modelBuilder.Entity&amp;lt;PurchaseDetails&amp;gt;()
                    .HasOne(d =&amp;gt; d.prdetails)
                    .WithMany() &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt; Assuming Bom doesn&amp;#39;t have a navigation property back to PRDetails&lt;/span&gt;
                    .HasForeignKey(d =&amp;gt; d.PrDetailId)
                    .OnDelete(DeleteBehavior.Cascade);
                &lt;span class="code-keyword"&gt;base&lt;/span&gt;.OnModelCreating(modelBuilder);
                modelBuilder.Entity&amp;lt;Job&amp;gt;()
               .HasOne(j =&amp;gt; j.User)
               .WithMany()
               .HasForeignKey(j =&amp;gt; j.UserId)
               .IsRequired();
            }
        }
    }

This &lt;span class="code-keyword"&gt;is&lt;/span&gt; my `Job` model &lt;span class="code-sdkkeyword"&gt;where&lt;/span&gt; I am referencing my CustomIdentity.

    &lt;span class="code-keyword"&gt;namespace&lt;/span&gt; InventoryManagement.Models
    {
        &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;class&lt;/span&gt; Job
        {
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;int&lt;/span&gt; Jobsequenceno { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;int&lt;/span&gt; JobId { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }

            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;string&lt;/span&gt; JobName { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; } 
      
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;int&lt;/span&gt; Qty { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; Customer Customer { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }

            &lt;span class="code-keyword"&gt;public&lt;/span&gt; DateTime JobDate { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; JobType JobType { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }

            &lt;span class="code-keyword"&gt;public&lt;/span&gt; ManufacturingBay ManufacturingBay { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; ProjectCategory Projectcategory { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; Currency currency { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-sdkkeyword"&gt;Double&lt;/span&gt; JobRate { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-sdkkeyword"&gt;Double&lt;/span&gt; Ordervalue { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-sdkkeyword"&gt;Double&lt;/span&gt; Ordervalueinbasecurrency { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }

            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;string&lt;/span&gt;  JobDescription { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;string&lt;/span&gt; Paymentterms { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;string&lt;/span&gt; Deliveryterms { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }

            &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;string&lt;/span&gt; UserId { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
            &lt;span class="code-keyword"&gt;public&lt;/span&gt; CustomIdentity User { &lt;span class="code-keyword"&gt;get&lt;/span&gt;; &lt;span class="code-keyword"&gt;set&lt;/span&gt;; }
        }
    }

Upon running migrations of &lt;span class="code-digit"&gt;2&lt;/span&gt; `DbContext` tables are created ..but upon running migration of JobDBcontext another &lt;span class="code-keyword"&gt;class&lt;/span&gt; called customidentity &lt;span class="code-keyword"&gt;is&lt;/span&gt; created which has exactly same column like my ASPNetUser and my job table &lt;span class="code-keyword"&gt;is&lt;/span&gt; referring to that &lt;span class="code-keyword"&gt;class&lt;/span&gt;.

    ALTER TABLE [dbo].[Jobs] WITH CHECK 
        ADD CONSTRAINT [FK_Jobs_CustomIdentity_UserId] 
            FOREIGN KEY([UserId]) REFERENCES [dbo].[CustomIdentity] ([Id])
            ON DELETE CASCADE  

I want the Job  table to refer to the `ASPNETUSER` table which &lt;span class="code-keyword"&gt;is&lt;/span&gt; having &lt;span class="code-sdkkeyword"&gt;value&lt;/span&gt; instead of &lt;span class="code-keyword"&gt;this&lt;/span&gt; CustomIdentity table.... I am able to insert user data to Job table.but upon listing job I am referring to `CustomIdentity` which &lt;span class="code-keyword"&gt;is&lt;/span&gt; showing &lt;span class="code-keyword"&gt;null&lt;/span&gt;..

     [HttpGet(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;List"&lt;/span&gt;)]
     &lt;span class="code-keyword"&gt;public&lt;/span&gt; &lt;span class="code-keyword"&gt;async&lt;/span&gt; Task&amp;lt;IActionResult&amp;gt; List()
     {
         &lt;span class="code-comment"&gt;//&lt;/span&gt;&lt;span class="code-comment"&gt; use dbContext to read the tags&lt;/span&gt;
         &lt;span class="code-keyword"&gt;var&lt;/span&gt; Joblist = &lt;span class="code-keyword"&gt;await&lt;/span&gt; jobdbcontext.Jobs.Include(j =&amp;gt; j.Customer).Include(j =&amp;gt; j.JobType).Include(j =&amp;gt; j.ManufacturingBay).
             Include(j =&amp;gt; j.Projectcategory).
              Include(j =&amp;gt; j.CustomIdentity).
              Include(j =&amp;gt; j.currency).
         Include(j =&amp;gt;j.User).
             ToListAsync();
         &lt;span class="code-keyword"&gt;return&lt;/span&gt; View(Joblist);
     }

How to resolve &lt;span class="code-keyword"&gt;this&lt;/span&gt;?so that my Job table will refer ASPNetUser table which &lt;span class="code-keyword"&gt;is&lt;/span&gt; having &lt;span class="code-sdkkeyword"&gt;value&lt;/span&gt; instead of CustomIdentity table.CustomIdentity model &lt;span class="code-keyword"&gt;is&lt;/span&gt; created to &lt;span class="code-keyword"&gt;add&lt;/span&gt; extra columns &lt;span class="code-keyword"&gt;in&lt;/span&gt; my ASPNetUser table.I am &lt;span class="code-keyword"&gt;new&lt;/span&gt; to &lt;span class="code-keyword"&gt;this&lt;/span&gt; ..can anyone help on &lt;span class="code-keyword"&gt;this&lt;/span&gt; ?&lt;/pre&gt;</description>
      <author>Member 13975739</author>
      <link>https://www.codeproject.com/Messages/5985886/How-to-refer-to-the-AspNetUser-table-which-is-the</link>
      <pubDate>Sun, 04 Feb 2024 15:53:00 GMT</pubDate>
      <guid>3_5985886</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Need to publish?</title>
      <description>Does a .NET 8 application need to be "published" before it can run properly?&lt;br /&gt;
&lt;br /&gt;
Or is building it good enough?&lt;br /&gt;
&lt;div class="signature"&gt;The difficult we do right away...&lt;br /&gt;
...the impossible takes slightly longer.&lt;/div&gt;</description>
      <author>Richard Andrew x64</author>
      <link>https://www.codeproject.com/Messages/5985863/Need-to-publish</link>
      <pubDate>Sun, 04 Feb 2024 14:05:00 GMT</pubDate>
      <guid>3_5985863</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Can anyone recommend a tool to...</title>
      <description>A tool for diagnosing which DLL is unable to be loaded by a subject DLL?  I've used DUMPBIN to list the static dependencies of the DLL and they are very few and all of them are in the same directory as the subject DLL.&lt;br /&gt;
&lt;br /&gt;
This isn't my DLL so I have no idea what it's doing in its DllLoad routine. But the Windows loader is just a black box. It gives no insight into what's going on during the DLL load.&lt;br /&gt;
&lt;br /&gt;
This is a .NET 8 project that is calling functions in the subject DLL through pinvoke, so maybe the .NET loader knows something.&lt;br /&gt;
&lt;br /&gt;
Anyone know how to debug this?&lt;br /&gt;
&lt;div class="signature"&gt;The difficult we do right away...&lt;br /&gt;
...the impossible takes slightly longer.&lt;/div&gt;</description>
      <author>Richard Andrew x64</author>
      <link>https://www.codeproject.com/Messages/5985821/Can-anyone-recommend-a-tool-to</link>
      <pubDate>Sun, 04 Feb 2024 01:42:00 GMT</pubDate>
      <guid>3_5985821</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Send String/Text to a other window [vb.net / API]</title>
      <description>Hello,&lt;br /&gt;
&lt;br /&gt;
I want to send a message/test to a other windows.&lt;br /&gt;
It should save me many time in putting me many time&lt;br /&gt;
strings/textes in MS Project, Outlook, ... ...&lt;br /&gt;
&lt;br /&gt;
Therefore i want to use the Windwos API in VB.net.&lt;br /&gt;
&lt;br /&gt;
I tried it in this way, but it doesn't work.&lt;br /&gt;
I get the windows handle, but the text isn't set at notepad or in a other window.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    &lt;div class='pre-lang' id='premain180795'&gt;&lt;div&gt;BASIC&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode180795' class='copy-code' data-index='180795' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre180795' style='margin-top:0;' class='lang-basic' data-language='BASIC' data-allowShrink='True' data-collapse='False'&gt;
Private Sub tmr_Worktimer_Tick(sender As Object, e As EventArgs) Handles tmr_Worktimer.Tick
        &lt;span class="code-keyword"&gt;If&lt;/span&gt; IsKeyPressed(Keys.VK_SHIFT) &lt;span class="code-keyword"&gt;Then&lt;/span&gt;
            &lt;span class="code-keyword"&gt;Dim&lt;/span&gt; aPoint As &lt;span class="code-keyword"&gt;New&lt;/span&gt; POINTAPI
            GetCursorPos(aPoint)
            &lt;span class="code-keyword"&gt;Dim&lt;/span&gt; hWnd As IntPtr = WindowFromPoint(aPoint.x, aPoint.y)
            SetForegroundWindow(hWnd)
            SetWindowTextUnicode(hWnd, WM_SETTEXT, IntPtr.Zero, &lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;Test"&lt;/span&gt;)
        &lt;span class="code-keyword"&gt;End&lt;/span&gt; &lt;span class="code-keyword"&gt;If&lt;/span&gt;
    &lt;span class="code-keyword"&gt;End&lt;/span&gt; Sub&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
My API Calls are:&lt;br /&gt;
&lt;div class='pre-lang' id='premain18094'&gt;&lt;div&gt;BASIC&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode18094' class='copy-code' data-index='18094' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre18094' style='margin-top:0;' class='lang-basic' data-language='BASIC' data-allowShrink='True' data-collapse='False'&gt;
Public Structure Keys
        Const VK_BACK As Short = &amp;amp;H8  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; Backspace key&lt;/span&gt;
        Const VK_TAB As Short = &amp;amp;H9  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; Tab key&lt;/span&gt;
        Const VK_RETURN As Short = &amp;amp;HD  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; Enter key&lt;/span&gt;
        Const VK_SHIFT As Short = &amp;amp;H10  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; Shift key&lt;/span&gt;
        Const VK_CONTROL As Short = &amp;amp;H11  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; STRG key&lt;/span&gt;
        Const VK_MENU As Short = &amp;amp;H12  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; Alt key&lt;/span&gt;
        Const VK_CAPITAL As Short = &amp;amp;H14  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; Caps Lock&lt;/span&gt;
        Const VK_ESCAPE As Short = &amp;amp;H1B  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; Escape&lt;/span&gt;
        Const VK_SPACE As Short = &amp;amp;H20  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; Space&lt;/span&gt;
        Const VK_PRIOR As Short = &amp;amp;H21  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; PageUp&lt;/span&gt;
        Const VK_NEXT As Short = &amp;amp;H22  &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; PageDown&lt;/span&gt;
&lt;span class="code-keyword"&gt;End&lt;/span&gt; Structure

 &amp;lt;DllImport(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;user32.dll"&lt;/span&gt;, SetLastError:=True, CharSet:=CharSet.Auto)&amp;gt;
    Public &lt;span class="code-keyword"&gt;Function&lt;/span&gt; GetAsyncKeyState(ByVal vKey As Int32) As Short
    &lt;span class="code-keyword"&gt;End&lt;/span&gt; &lt;span class="code-keyword"&gt;Function&lt;/span&gt;

 Public &lt;span class="code-keyword"&gt;Function&lt;/span&gt; IsKeyPressed(ByVal KeyToCheck As Short) As Boolean
        &lt;span class="code-keyword"&gt;Dim&lt;/span&gt; res As Short
        res = GetAsyncKeyState(KeyToCheck)
        &lt;span class="code-keyword"&gt;If&lt;/span&gt; res &amp;lt; &lt;span class="code-digit"&gt;0&lt;/span&gt; &lt;span class="code-keyword"&gt;Then&lt;/span&gt; &lt;span class="code-comment"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-comment"&gt; -32768 Then&lt;/span&gt;
            IsKeyPressed = True
        &lt;span class="code-keyword"&gt;Else&lt;/span&gt;
            IsKeyPressed = False
        &lt;span class="code-keyword"&gt;End&lt;/span&gt; &lt;span class="code-keyword"&gt;If&lt;/span&gt;
    &lt;span class="code-keyword"&gt;End&lt;/span&gt; &lt;span class="code-keyword"&gt;Function&lt;/span&gt;
	
	    &amp;lt;System.Runtime.InteropServices.StructLayout(Runtime.InteropServices.LayoutKind.Sequential)&amp;gt;
    Public Structure POINTAPI
        &lt;span class="code-keyword"&gt;Dim&lt;/span&gt; x As Integer
        &lt;span class="code-keyword"&gt;Dim&lt;/span&gt; y As Integer
    &lt;span class="code-keyword"&gt;End&lt;/span&gt; Structure
	
	    &amp;lt;DllImport(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;user32.dll"&lt;/span&gt;, ExactSpelling:=True, SetLastError:=True)&amp;gt;
    Public &lt;span class="code-keyword"&gt;Function&lt;/span&gt; GetCursorPos(ByRef lpPoint As POINTAPI) As &amp;lt;MarshalAs(UnmanagedType.Bool)&amp;gt; Boolean
    &lt;span class="code-keyword"&gt;End&lt;/span&gt; &lt;span class="code-keyword"&gt;Function&lt;/span&gt;
	
	    &amp;lt;DllImport(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;user32.dll"&lt;/span&gt;)&amp;gt;
    Public &lt;span class="code-keyword"&gt;Function&lt;/span&gt; WindowFromPoint(xPoint As Integer, yPoint As Integer) As IntPtr
    &lt;span class="code-keyword"&gt;End&lt;/span&gt; &lt;span class="code-keyword"&gt;Function&lt;/span&gt;
	
	    &amp;lt;DllImport(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;user32.dll"&lt;/span&gt;)&amp;gt;
    Public &lt;span class="code-keyword"&gt;Function&lt;/span&gt; SetForegroundWindow(hWnd As IntPtr) As Boolean
    &lt;span class="code-keyword"&gt;End&lt;/span&gt; &lt;span class="code-keyword"&gt;Function&lt;/span&gt;
	
	    Friend Const WM_SETTEXT As Integer = &lt;span class="code-digit"&gt;12&lt;/span&gt;

    &amp;lt;DllImport(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;user32.dll"&lt;/span&gt;, EntryPoint:=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;SendMessageW"&lt;/span&gt;, CharSet:=CharSet.Unicode)&amp;gt;
    Public &lt;span class="code-keyword"&gt;Function&lt;/span&gt; SetWindowTextUnicode(ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As IntPtr, ByVal lParam As &lt;span class="code-keyword"&gt;String&lt;/span&gt;) As IntPtr
    &lt;span class="code-keyword"&gt;End&lt;/span&gt; &lt;span class="code-keyword"&gt;Function&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Any ideas? Is there a other way to send the string/text?</description>
      <author>Seek51</author>
      <link>https://www.codeproject.com/Messages/5976227/Send-String-Text-to-a-other-window-vb-net-API</link>
      <pubDate>Tue, 05 Dec 2023 08:01:00 GMT</pubDate>
      <guid>3_5976227</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>LibVLCSharp hosted in mcr.microsoft.com/dotnet/aspnet:6.0 Docker image inside a linux context</title>
      <description>&lt;div class='pre-lang' id='premain643314'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode643314' class='copy-code' data-index='643314' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre643314' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
Hello everyone,
I have a &lt;span class="code-keyword"&gt;case&lt;/span&gt; with vlc on my ubuntu container. Indeed, my c# method :

&amp;lt;pre lang=&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;C#"&lt;/span&gt;&amp;gt;if (File.Exists(video.Path))
{
&lt;span class="code-keyword"&gt;using&lt;/span&gt; (&lt;span class="code-keyword"&gt;var&lt;/span&gt; libVLC = &lt;span class="code-keyword"&gt;new&lt;/span&gt; LibVLC(enableDebugLogs: &lt;span class="code-keyword"&gt;true&lt;/span&gt;))
{
&lt;span class="code-keyword"&gt;this&lt;/span&gt;.logger.LogInformation($&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;ImageDetectionWorker.StartFramesPredictionVLC : VLC lib initialized"&lt;/span&gt;)

&lt;span class="code-keyword"&gt;if&lt;/span&gt; (Directory.Exists(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;/shared-volume/vlc"&lt;/span&gt; == &lt;span class="code-keyword"&gt;false&lt;/span&gt;))
{
Directory.CreateDirectory(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;/shared-volume/vlc"&lt;/span&gt;)
}

libVLC.SetLogFile($&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;/shared-volume/vlc/vlc.log"&lt;/span&gt;;)

&lt;span class="code-keyword"&gt;var&lt;/span&gt; absoluteVideoPath = &lt;span class="code-keyword"&gt;new&lt;/span&gt; FileInfo(video.Path.FullName)

&lt;span class="code-keyword"&gt;using&lt;/span&gt; (&lt;span class="code-keyword"&gt;var&lt;/span&gt; media = &lt;span class="code-keyword"&gt;new&lt;/span&gt; Media(libVLC, absoluteVideoPath, options: &lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;--no-audio --no-xlib --no-sout-audio"&lt;/span&gt;))
{
&lt;span class="code-keyword"&gt;this&lt;/span&gt;.logger.LogInformation($&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;ImageDetectionWorker.StartFramesPredictionVLC : VLC media initialized"&lt;/span&gt;)

&lt;span class="code-keyword"&gt;using&lt;/span&gt; (&lt;span class="code-keyword"&gt;var&lt;/span&gt; mediaPlayer = &lt;span class="code-keyword"&gt;new&lt;/span&gt; MediaPlayer(media))
{
&lt;span class="code-keyword"&gt;this&lt;/span&gt;.logger.LogInformation($&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;ImageDetectionWorker.StartFramesPredictionVLC : VLC media player initialized"&lt;/span&gt;)

mediaPlayer.ToggleMute()&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Throw this logs in my container:&lt;br /&gt;
&lt;br /&gt;
 info: EigenVectors.PredictionWrite.Api.Workers.ImageDetectionWorker[0]       ImageDetectionWorker.StartFramesPredictionVLC : Start to initialize VLC core info: EigenVectors.PredictionWrite.Api.Workers.ImageDetectionWorker[0]       ImageDetectionWorker.StartFramesPredictionVLC : VLC core initialized [00007f897c0027e0] main libvlc debug: VLC media player - 3.0.20 Vetinari [00007f897c0027e0] main libvlc debug: Copyright © 1996-2023 the VideoLAN team [00007f897c0027e0] main libvlc debug: revision 3.0.20-0-g6f0d0ab126b [00007f897c0027e0] main libvlc debug: configured with ./configure  '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--disable-debug' '--config-cache' '--disable-update-check' '--enable-fast-install' '--docdir=/usr/share/doc/vlc' '--with-binary-version=3.0.20-0+deb11u1' '--enable-a52' '--enable-aa' '--enable-aribsub' '--enable-avahi' '--enable-bluray' '--enable-caca' '--enable-chromaprint' '--enable-chromecast' '--enable-dav1d' '--enable-dbus' '--enable-dca' '--enable-dvbpsi' '--enable-dvdnav' '--enable-faad' '--enable-flac' '--enable-fluidsynth' '--enable-freetype' '--enable-fribidi' '--enable-gles2' '--enable-gnutls' '--enable-harfbuzz' '--enable-jack' '--enable-kate' '--enable-libass' '--enable-libmpeg2' '--enable-libxml2' '--enable-lirc' '--enable-mad' '--enable-matroska' '--enable-mod' '--enable-mpc' '--enable-mpg123' '--enable-mtp' '--enable-ncurses' '--enable-notify' '--enable-ogg' '--enable-opus' '--enable-pulse' '--enable-qt' '--enable-realrtsp' '--enable-samplerate' '--enable-sdl-image' '--enable-sftp' '--enable-shine' '--enable-shout' '--enable-skins2' '--enable-soxr' '--enable-spatialaudio' '--enable-speex' '--enable-svg' '--enable-svgdec' '--enable-taglib' '--enable-theora' '--enable-twolame' '--enable-upnp' '--enable-vdpau' '--enable-vnc' '--enable-vorbis' '--enable-x264' '--enable-x265' '--enable-zvbi' '--with-kde-solid=/usr/share/solid/actions/' '--disable-aom' '--disable-crystalhd' '--disable-d3d11va' '--disable-decklink' '--disable-directx' '--disable-dsm' '--disable-dxva2' '--disable-fdkaac' '--disable-fluidlite' '--disable-freerdp' '--disable-goom' '--disable-gst-decode' '--disable-libtar' '--disable-live555' '--disable-macosx' '--disable-macosx-avfoundation' '--disable-macosx-qtkit' '--disable-mfx' '--disable-microdns' '--disable-opencv' '--disable-projectm' '--disable-schroedinger' '--disable-sparkle' '--disable-srt' '--disable-telx' '--disable-vpx' '--disable-vsxu' '--disable-wasapi' '--enable-alsa' '--enable-dc1394' '--enable-dv1394' '--enable-libplacebo' '--enable-linsys' '--enable-nfs' '--enable-udev' '--enable-v4l2' '--enable-wayland' '--enable-libva' '--enable-vcd' '--enable-smbclient' '--disable-oss' '--enable-mmx' '--enable-sse' '--disable-neon' '--disable-altivec' '--disable-omxil' 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -ffile-prefix-map=/build/reproducible-path/vlc-3.0.20=. -fstack-protector-strong -Wformat -Werror=format-security ' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -ffile-prefix-map=/build/reproducible-path/vlc-3.0.20=. -fstack-protector-strong -Wformat -Werror=format-security ' 'OBJCFLAGS=-g -O2 -ffile-prefix-map=/build/reproducible-path/vlc-3.0.20=. -fstack-protector-strong -Wformat -Werror=format-security' [00007f897c0027e0] main libvlc debug: searching plug-in modules [00007f897c0027e0] main libvlc debug: loading plugins cache file /usr/lib/x86_64-linux-gnu/vlc/plugins/plugins.dat [00007f897c0027e0] main libvlc debug: recursively browsing `/usr/lib/x86_64-linux-gnu/vlc/plugins' [00007f897c0027e0] main libvlc debug: plug-ins loaded: 519 modules [00007f897c001ad0] main logger debug: looking for logger module matching "any": 4 candidates [00007f897c001ad0] main logger debug: using logger module "console" [00007f897c0027e0] main libvlc debug: translation test: code is "C" [00007f8984270880] main keystore debug: looking for keystore module matching "memory": 4 candidates [00007f8984270880] main keystore debug: using keystore module "memory" [00007f897c0027e0] main libvlc debug: CPU has capabilities MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX AVX2 FPU  info: EigenVectors.PredictionWrite.Api.Workers.ImageDetectionWorker[0]       ImageDetectionWorker.StartFramesPredictionVLC : VLC lib initialized info: EigenVectors.PredictionWrite.Api.Workers.ImageDetectionWorker[0]       ImageDetectionWorker.StartFramesPredictionVLC : VLC media initialized info: EigenVectors.PredictionWrite.Api.Workers.ImageDetectionWorker[0]       ImageDetectionWorker.StartFramesPredictionVLC : VLC media player initialized info: EigenVectors.PredictionWrite.Api.Workers.ImageDetectionWorker[0]       ImageDetectionWorker.StartFramesPredictionVLC : True ALSA lib confmisc.c:767:(parse_card) cannot find card '0' ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings &lt;br /&gt;
&lt;br /&gt;
My Dockerfile :&lt;br /&gt;
&lt;br /&gt;
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build-env&lt;br /&gt;
WORKDIR /app&lt;br /&gt;
EXPOSE 80&lt;br /&gt;
&lt;br /&gt;
COPY . .&lt;br /&gt;
RUN dotnet restore MyProject.csproj&lt;br /&gt;
RUN dotnet publish MyProject.csproj -c Release -o out --no-restore&lt;br /&gt;
&lt;br /&gt;
FROM mcr.microsoft.com/dotnet/aspnet:6.0&lt;br /&gt;
WORKDIR /app&lt;br /&gt;
COPY --from=build-env /app/out .&lt;br /&gt;
RUN apt-get update &amp;amp;&amp;amp; apt-get install -y vlc &amp;amp;&amp;amp; apt-get install libvlc-dev&lt;br /&gt;
ENV LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH&lt;br /&gt;
ENTRYPOINT ["dotnet", "MyProject.dll"]&lt;br /&gt;
&lt;br /&gt;
I've tried a lot of package to install on the container without any success</description>
      <author>etodemerzel</author>
      <link>https://www.codeproject.com/Messages/5975655/LibVLCSharp-hosted-in-mcr-microsoft-com-dotnet-asp</link>
      <pubDate>Thu, 30 Nov 2023 22:29:00 GMT</pubDate>
      <guid>3_5975655</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>How to "update" old .NET code to current versions</title>
      <description>Lets start off with a little honesty - I am unsure of exactly what I am asking, but I am sure that someone can help.&lt;br /&gt;
&lt;br /&gt;
So I currently have Visual Studio 17.8 installed. I predominantly work in VB.NET.  I have some older code downloaded from Github, that works just fine (as binary) when it was put together say 10 or more years ago.   The crux of the problem is that you (and by you, I mean me) cannot in some cases simply drop it into VS 17.8 without several errors.&lt;br /&gt;
&lt;br /&gt;
Therefore, the naïve question is - can anyone point to a good source of information that would guide me on how to "upgrade" older code to eliminate errors in compiling with the current versions of VS and .NET?&lt;br /&gt;
&lt;br /&gt;
THanks.&lt;br /&gt;
&lt;div class="signature"&gt;Pound to fit, paint to match&lt;/div&gt;</description>
      <author>lewist57</author>
      <link>https://www.codeproject.com/Messages/5975647/How-to-update-old-NET-code-to-current-versions</link>
      <pubDate>Thu, 30 Nov 2023 21:38:00 GMT</pubDate>
      <guid>3_5975647</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Working with fonts and chars (⬤) in Win forms and OS versions, 10 compared to 7</title>
      <description>I wrote an app in Win Forms, and I'm using a circle in ListView, as a pleasant indicator. On my rigs, running Win 10 at home and 11 at the office, the ⬤ char works no problem. But on the customers computers running Win 7, I get the tall square symbol. &lt;br /&gt;
&lt;br /&gt;
So I changed the Font in my Win Forms App to Segoe UI, which looks nice, but I still get the tall rectangle. I checked the customers computers to see what fonts are loaded, and Segoe UI is there. &lt;br /&gt;
&lt;br /&gt;
Then I did research, and a few online posts talk about font searching by the OS, which dates back to Windows XP. If the Char ⬤ doesn't exists in the Font file, the OS will search for that char in other font files, such as webdings.ttf. Found a post about using the RegEdit /LocalMachine/Software/WindowsNt/Fonts and having to edit font mappings, which looked complicated. &lt;br /&gt;
&lt;br /&gt;
ChatGpt says that I can MeasureText, to see if a char exists, and if not choose another char sysmbol.But the char always exists. 
&lt;div class='pre-lang' id='premain946742'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode946742' class='copy-code' data-index='946742' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre946742' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
Dim font As New Font(&lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;Segoe UI"&lt;/span&gt;, &lt;span class="code-digit"&gt;9&lt;/span&gt;, FontStyle.Regular)

&lt;span class="code-string"&gt;&amp;#39;&lt;/span&gt;&lt;span class="code-string"&gt; The character you want to check (e.g., the copyright symbol &amp;#169;)
Dim specialChar As Char = "⬤"

&amp;#39;&lt;/span&gt; Check &lt;span class="code-keyword"&gt;if&lt;/span&gt; the font can display the character
Dim canDisplayChar As &lt;span class="code-sdkkeyword"&gt;Boolean&lt;/span&gt; = TextRenderer.MeasureText(specialChar, font).Width &amp;gt; &lt;span class="code-digit"&gt;0&lt;/span&gt;
If canDisplayChar Then
    Return &lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;⬤"&lt;/span&gt;
Else
    Return &lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;X"&lt;/span&gt;
End If&lt;/pre&gt;
&lt;br /&gt;
I'm just wondering if someone here has figured this out, and can share what they did. The customer really wants the ⬤.&lt;br /&gt;
&lt;br /&gt;
On a side note or question, I can set a color for the circle in ListView on .Net Core 7, but can't set the color of the circle in .Net Framework 4.6.1.&lt;br /&gt;

&lt;div class="signature"&gt;If it ain't broke don't fix it&lt;br /&gt;
Discover my world at &lt;a href="https://jkirkerx.com" target="_blank"&gt;jkirkerx.com&lt;/a&gt;&lt;/div&gt;</description>
      <author>jkirkerx</author>
      <link>https://www.codeproject.com/Messages/5969082/Working-with-fonts-and-chars-in-Win-forms-and-OS-v</link>
      <pubDate>Tue, 24 Oct 2023 21:34:00 GMT</pubDate>
      <guid>3_5969082</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Capturing a still from a RTSP stream</title>
      <description>Good morning,&lt;br /&gt;
&lt;br /&gt;
I'm trying to capture an image from a RTSP stream using ffmpeg.&lt;br /&gt;
&lt;br /&gt;
I'm struggling, it is as if ffmpeg isnt working. A snip from my code is below:&lt;br /&gt;
&lt;div class='pre-lang' id='premain889650'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode889650' class='copy-code' data-index='889650' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre889650' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
&lt;span class="code-keyword"&gt;using&lt;/span&gt; System.Runtime.InteropServices;
&lt;span class="code-keyword"&gt;using&lt;/span&gt; FFmpeg.AutoGen;
&lt;span class="code-keyword"&gt;using&lt;/span&gt; SixLabors.ImageSharp.Formats.Png;
&lt;span class="code-keyword"&gt;using&lt;/span&gt; SixLabors.ImageSharp.Formats;

Class Program
{
    &lt;span class="code-keyword"&gt;unsafe&lt;/span&gt; &lt;span class="code-keyword"&gt;static&lt;/span&gt; &lt;span class="code-keyword"&gt;void&lt;/span&gt; Main(string[] args)
    {
&lt;span class="code-keyword"&gt;string&lt;/span&gt; inputUrl = &lt;span class="code-string"&gt;"&lt;/span&gt;&lt;span class="code-string"&gt;rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mp4"&lt;/span&gt;; 


ffmpeg.avformat_open_input(&amp;amp;pFormatContext, inputUrl, &lt;span class="code-keyword"&gt;null&lt;/span&gt;, &lt;span class="code-keyword"&gt;null&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
The error that I'm receiving which is related to the last line of code is:&lt;br /&gt;
&lt;br /&gt;
&lt;div class='pre-lang' id='premain171130'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode171130' class='copy-code' data-index='171130' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre171130' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
System.NotSupportedException
  HResult=&lt;span class="code-digit"&gt;0x80131515&lt;/span&gt;
  Message=Specified method &lt;span class="code-keyword"&gt;is&lt;/span&gt; not supported.
  Source=FFmpeg.AutoGen
  StackTrace:
   at FFmpeg.AutoGen.DynamicallyLoadedBindings.&amp;lt;&amp;gt;c.&amp;lt;Initialize&amp;gt;b__2_1284(AVFormatContext** &amp;lt;p0&amp;gt;, &lt;span class="code-sdkkeyword"&gt;String&lt;/span&gt; &amp;lt;p1&amp;gt;, AVInputFormat* &amp;lt;p2&amp;gt;, AVDictionary** &amp;lt;p3&amp;gt;)
   at FFmpeg.AutoGen.ffmpeg.avformat_open_input(AVFormatContext** ps, &lt;span class="code-sdkkeyword"&gt;String&lt;/span&gt; url, AVInputFormat* fmt, AVDictionary** options)
   at Program.Main(String[] args)&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Any help would be appreciated,&lt;br /&gt;
&lt;br /&gt;
Freddie</description>
      <author>Member 14995896</author>
      <link>https://www.codeproject.com/Messages/5963059/Capturing-a-still-from-a-RTSP-stream</link>
      <pubDate>Tue, 19 Sep 2023 09:43:00 GMT</pubDate>
      <guid>3_5963059</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>VB.NET Framework 7, how to multithread on existing user control?</title>
      <description>I have about 6 user controls, each with its own GUI and code to load data from a MySQL database. &lt;br /&gt;
&lt;br /&gt;
Are there any tutorials or examples on how to use multithreading to load all 6 user controls on a Form when the Form is shown?&lt;br /&gt;
&lt;br /&gt;
Thanks in advance.</description>
      <author>Member 14155949</author>
      <link>https://www.codeproject.com/Messages/5961479/VB-NET-Framework-7-how-to-multithread-on-existing</link>
      <pubDate>Sun, 10 Sep 2023 17:06:00 GMT</pubDate>
      <guid>3_5961479</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>vb.net 2022 webview2 getting current url.</title>
      <description>I am using visual basic to try and get the webview2 current url but all I get is the first page that I opened with the webview2. I used &lt;div class='pre-lang' id='premain140438'&gt;&lt;div&gt;&lt;/div&gt;&lt;div class='pre-action-link'&gt;&lt;span id='copycode140438' class='copy-code' data-index='140438' style='visibility:hidden'&gt;&lt;svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' version='1.1' viewBox='0 0 460 460' style='width: 16px;height:16px;' xml:space='preserve'&gt;&lt;g&gt;&lt;path d='M425.934,0H171.662c-18.122,0-32.864,14.743-32.864,32.864v77.134h30V32.864c0-1.579,1.285-2.864,2.864-2.864h254.272     c1.579,0,2.864,1.285,2.864,2.864v254.272c0,1.58-1.285,2.865-2.864,2.865h-74.729v30h74.729 c18.121,0,32.864-14.743,32.864-32.865V32.864C458.797,14.743,444.055,0,425.934,0z'&gt;&lt;/path&gt;&lt;path d='M288.339,139.998H34.068c-18.122,0-32.865,14.743-32.865,32.865v254.272C1.204,445.257,15.946,460,34.068,460h254.272 c18.122,0,32.865-14.743,32.865-32.864V172.863C321.206,154.741,306.461,139.998,288.339,139.998z M288.341,430H34.068    c-1.58,0-2.865-1.285-2.865-2.864V172.863c0-1.58,1.285-2.865,2.865-2.865h254.272c1.58,0,2.865,1.285,2.865,2.865v254.273h0.001 C291.206,428.715,289.92,430,288.341,430z'&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre id='pre140438' style='margin-top:0;' data-allowShrink='True' data-collapse='False'&gt;
dim URL &lt;span class="code-keyword"&gt;as&lt;/span&gt; &lt;span class="code-keyword"&gt;string&lt;/span&gt; = webView21.Source.ToString()&lt;/pre&gt; but not returning current page url. I have work on this for 2 days now and no luck. I sure hope some body can answer this or my whole project is toast.</description>
      <author>steve2015</author>
      <link>https://www.codeproject.com/Messages/5960257/vb-net-2022-webview2-getting-current-url</link>
      <pubDate>Sat, 02 Sep 2023 20:16:00 GMT</pubDate>
      <guid>3_5960257</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
    <item>
      <title>Help! My .NET to MySQL application suddenly stopped working...</title>
      <description>First some background. 10+ years ago my spouse started a small webshop and I made the administration part in Delphi. Slowly transitioning it to the web. I have tried to make everything as automatic as I can. Like register a payment automatically makes a record in the ledger.&lt;br /&gt;
On the same line I later made a C# .NET as a part in the handling of incoming invoices. She scans the invoice to PDF and place it on the desktop or drops it there if it is delivered electronically. My application detects the file and pops up and she can fill in the things needed to put in the ledger and store it in the database.&lt;br /&gt;
Now last week the application starts and then closes without being touched for years. It worked last month, the delphi written things still works.&lt;br /&gt;
Does anyone have any idea why, this coincide with me reading something about Microsoft removing some old version of TLS. The application uses Entityframework.&lt;br /&gt;
Then I tried opening up the source in VS 2017 community edition(?) where it was written but I never get past the "credentials is wrong" page. Moved the code to another computer with VS 2022 on it where I had trouble getting it to work. When I did I got back an exception telling me "opening of table  didn't work" but no indication of why.</description>
      <author>erikbrannlund</author>
      <link>https://www.codeproject.com/Messages/5958869/Help-My-NET-to-MySQL-application-suddenly-stopped</link>
      <pubDate>Fri, 25 Aug 2023 10:07:00 GMT</pubDate>
      <guid>3_5958869</guid>
      <subject>.NET (Core and Framework)</subject>
    </item>
  </channel>
</rss>