<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Posts on Claudio Bosticco</title><link>https://claudiobosticco.com/en/posts/</link><description>Recent content in Posts on Claudio Bosticco</description><generator>Hugo -- 0.163.3</generator><language>en-us</language><lastBuildDate>Fri, 01 Nov 2024 12:08:35 +0100</lastBuildDate><atom:link href="https://claudiobosticco.com/en/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>SQL Server Reset Table Index</title><link>https://claudiobosticco.com/en/posts/sql-server-resettare-indice-tabella/</link><pubDate>Fri, 01 Nov 2024 12:08:35 +0100</pubDate><guid>https://claudiobosticco.com/en/posts/sql-server-resettare-indice-tabella/</guid><description>&lt;p&gt;In case a table has an auto-incremental ID column, it may sometimes be appropriate to reset its base value (for example, after a truncate table).&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;DBCC CHECKIDENT (&lt;span style="color:#e6db74"&gt;&amp;#39;tableName&amp;#39;&lt;/span&gt;, RESEED, &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>SQL Server Count All Rows in All Tables</title><link>https://claudiobosticco.com/en/posts/sql-server-contare-tutte-le-righe-di-tutte-le-tabelle/</link><pubDate>Fri, 01 Nov 2024 12:08:10 +0100</pubDate><guid>https://claudiobosticco.com/en/posts/sql-server-contare-tutte-le-righe-di-tutte-le-tabelle/</guid><description>&lt;p&gt;This query is used to count all rows in all tables of a database.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;CREATE&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;TABLE&lt;/span&gt; &lt;span style="color:#f92672"&gt;#&lt;/span&gt;counts
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;(
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;table_name&lt;/span&gt; varchar(&lt;span style="color:#ae81ff"&gt;255&lt;/span&gt;),
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;row_count&lt;/span&gt; int
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;EXEC&lt;/span&gt; sp_MSForEachTable &lt;span style="color:#f92672"&gt;@&lt;/span&gt;command1&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#39;INSERT #counts (table_name, row_count) SELECT &amp;#39;&amp;#39;?&amp;#39;&amp;#39;, COUNT(*) FROM ?&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;SELECT&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;table_name&lt;/span&gt;, &lt;span style="color:#66d9ef"&gt;row_count&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;FROM&lt;/span&gt; &lt;span style="color:#f92672"&gt;#&lt;/span&gt;counts &lt;span style="color:#66d9ef"&gt;ORDER&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;BY&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;row_count&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;DESC&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;DROP&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;TABLE&lt;/span&gt; &lt;span style="color:#f92672"&gt;#&lt;/span&gt;counts
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>SQL Server Backup Database via Query</title><link>https://claudiobosticco.com/en/posts/sql-server-effettuare-backup-database-tramite-query/</link><pubDate>Fri, 01 Nov 2024 12:06:50 +0100</pubDate><guid>https://claudiobosticco.com/en/posts/sql-server-effettuare-backup-database-tramite-query/</guid><description>&lt;p&gt;To backup a SQL Server database using a SQL query, you need to use the following command:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;BACKUP &lt;span style="color:#66d9ef"&gt;DATABASE&lt;/span&gt; DatabaseName &lt;span style="color:#66d9ef"&gt;TO&lt;/span&gt; DISK &lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#39;C:\DBSQLBACKUP\DatabaseName.bak&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>Linux Disk Space Maintenance</title><link>https://claudiobosticco.com/en/posts/linux-manutenzione-dello-spazio-su-disco/</link><pubDate>Fri, 01 Nov 2024 12:06:08 +0100</pubDate><guid>https://claudiobosticco.com/en/posts/linux-manutenzione-dello-spazio-su-disco/</guid><description>&lt;p&gt;This section illustrates commands for optimizing space on Linux servers.&lt;/p&gt;
&lt;h2 id="delete-files-with-a-certain-extension"&gt;Delete files with a certain extension&lt;/h2&gt;
&lt;p&gt;You can use the find command specifying:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;directory to search (recursively)&lt;/li&gt;
&lt;li&gt;the &lt;strong&gt;-name&lt;/strong&gt; tag to filter by extension&lt;/li&gt;
&lt;li&gt;the &lt;strong&gt;-delete&lt;/strong&gt; tag to launch deletion of found files&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;find /var/opt/docker -name *.bak -delete
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="find-files-larger-than-1gb"&gt;Find files larger than 1GB&lt;/h2&gt;
&lt;p&gt;You can use the find command specifying:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;directory to search (recursively)&lt;/li&gt;
&lt;li&gt;the &lt;strong&gt;-name&lt;/strong&gt; tag to filter by extension&lt;/li&gt;
&lt;li&gt;the &lt;strong&gt;-size&lt;/strong&gt; tag to filter only files with size equal to or greater than 1 GB&lt;/li&gt;
&lt;li&gt;the &lt;strong&gt;-printf&lt;/strong&gt; tag to print filename and size in KB&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;find /var/opt/docker -name &lt;span style="color:#e6db74"&gt;&amp;#39;*.ldf&amp;#39;&lt;/span&gt; -size +1G -printf &lt;span style="color:#e6db74"&gt;&amp;#34;%p %k KB\n&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>EF Migrations</title><link>https://claudiobosticco.com/en/posts/ef-migrations/</link><pubDate>Fri, 01 Nov 2024 12:05:12 +0100</pubDate><guid>https://claudiobosticco.com/en/posts/ef-migrations/</guid><description>&lt;p&gt;This section illustrates useful commands for managing migrations.&lt;/p&gt;
&lt;h2 id="adding-a-migration"&gt;Adding a migration&lt;/h2&gt;
&lt;p&gt;To add a migration, navigate to the folder where the solution file is located and use the following command:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-powershell" data-lang="powershell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;dotnet ef migrations add &amp;lt;&amp;lt;MigrationName&amp;gt;&amp;gt; --context LogicWayContext -p LogicWay.Core -s LogicWay
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;It is important to specify the -p flag to indicate the project where the context is located and where to create the migration file, and also the -s flag to specify the solution, from which the command can determine which startup project contains the database connection string.&lt;/p&gt;</description></item><item><title>JavaScript Filter Map Reduce</title><link>https://claudiobosticco.com/en/posts/javascript-filter-map-reduce/</link><pubDate>Fri, 01 Nov 2024 12:03:32 +0100</pubDate><guid>https://claudiobosticco.com/en/posts/javascript-filter-map-reduce/</guid><description>&lt;p&gt;These three functions are used to quickly manage data within lists. They are the JavaScript equivalent of LINQ.&lt;/p&gt;
&lt;h2 id="filter"&gt;Filter&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;filter&lt;/strong&gt; function allows you to extract certain elements from the array based on a function.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;const&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;numbers&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; [&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;const&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;even&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;numbers&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;filter&lt;/span&gt;((&lt;span style="color:#a6e22e"&gt;x&lt;/span&gt;) =&amp;gt; &lt;span style="color:#a6e22e"&gt;x&lt;/span&gt; &lt;span style="color:#f92672"&gt;%&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt; &lt;span style="color:#f92672"&gt;===&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;console&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;log&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;Even numbers: &amp;#34;&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;even&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="map"&gt;Map&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;map&lt;/strong&gt; function allows you to apply a function to each element of the list.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;const&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;numbers&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; [&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;, &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;];
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;const&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;squares&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;numbers&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;map&lt;/span&gt;((&lt;span style="color:#a6e22e"&gt;x&lt;/span&gt;) =&amp;gt; &lt;span style="color:#a6e22e"&gt;x&lt;/span&gt; &lt;span style="color:#f92672"&gt;*&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;x&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;console&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;log&lt;/span&gt;(&lt;span style="color:#e6db74"&gt;&amp;#34;Squares: &amp;#34;&lt;/span&gt;, &lt;span style="color:#a6e22e"&gt;squares&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="reduce"&gt;Reduce&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;reduce&lt;/strong&gt; function allows you to perform a function on each element of the list and returns an &amp;ldquo;accumulated&amp;rdquo; result.&lt;/p&gt;</description></item><item><title>7zip Guide</title><link>https://claudiobosticco.com/en/posts/guida-7zip/</link><pubDate>Fri, 01 Nov 2024 12:03:03 +0100</pubDate><guid>https://claudiobosticco.com/en/posts/guida-7zip/</guid><description>&lt;p&gt;7-Zip can be used via console. To simplify its use, simply add the path to the executable to the system PATH.&lt;/p&gt;
&lt;h2 id="archive"&gt;Archive&lt;/h2&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;7z.exe a archive.7z .\sourcefile.ext
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="extract-files"&gt;Extract files&lt;/h2&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;7z.exe e sourcefile.zip
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Prevent Double Click Button ASP WebForms</title><link>https://claudiobosticco.com/en/posts/impedire-doppio-click-button-asp-webforms/</link><pubDate>Fri, 01 Nov 2024 11:59:00 +0100</pubDate><guid>https://claudiobosticco.com/en/posts/impedire-doppio-click-button-asp-webforms/</guid><description>&lt;p&gt;To prevent inadvertent double-clicking of a Button in an ASP.NET WebForms project, you need to set the &lt;code&gt;UseSubmitBehavior=&amp;quot;false&amp;quot;&lt;/code&gt; tag:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code class="language-asp" data-lang="asp"&gt;
&amp;lt;asp:Button runat=&amp;#34;server&amp;#34; OnClick=&amp;#34;Execute_Click&amp;#34; Text=&amp;#34;Execute&amp;#34;
UseSubmitBehavior=&amp;#34;false&amp;#34; OnClientClick=&amp;#34;CheckDouble(this)&amp;#34;/&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;and invoke the following JavaScript:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;var&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;submit&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;function&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;CheckDouble&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;bt&lt;/span&gt;) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;//alert(submit);
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; (&lt;span style="color:#a6e22e"&gt;submit&lt;/span&gt; &lt;span style="color:#f92672"&gt;&amp;gt;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;) {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;bt&lt;/span&gt;.&lt;span style="color:#a6e22e"&gt;disabled&lt;/span&gt; &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;true&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;alert&lt;/span&gt;(
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;You have already clicked the button. Wait for the operation to complete&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; );
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;false&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;submit&lt;/span&gt;&lt;span style="color:#f92672"&gt;++&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;return&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;true&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item></channel></rss>