feat: añadido sitemap custom

This commit is contained in:
2026-03-16 15:37:56 -03:00
parent 660a5690ee
commit 85e93a52f2
29 changed files with 247 additions and 86 deletions

View File

@@ -34,7 +34,7 @@
<link>https://fedesrv.ddns.net/posts/string-interpolation/</link>
<pubDate>Tue, 24 Oct 2023 22:24:17 +0800</pubDate>
<guid>https://fedesrv.ddns.net/posts/string-interpolation/</guid>
<description>&lt;h1 id=&#34;que-es&#34;&gt;¿Que es?&lt;/h1&gt;&#xA;&lt;p&gt;Es un proceso de evaluado, en el cual se reemplazan placeholders en &lt;code&gt;string&lt;/code&gt; por valores, en nuestro caso, de variables en momento de ejecución.&lt;/p&gt;&#xA;&lt;h1 id=&#34;sintaxis&#34;&gt;Sintaxis&lt;/h1&gt;&#xA;&lt;pre&gt;&lt;code&gt;var manzanas = 4;&#xA;var bananas = 3;&#xA;&#xA;Console.WriteLine($&amp;quot;Tengo {manzanas} manzanas&amp;quot;);&#xA;Console.WriteLine($&amp;quot;Vendí {manzanas + bananas} frutas&amp;quot;);&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Basicamente son plantillas.&lt;/p&gt;&lt;/blockquote&gt;</description>
<description>&lt;h1 id=&#34;que-es&#34;&gt;¿Que es?&lt;/h1&gt;&#xA;&lt;p&gt;Es un proceso de evaluado, en el cual se reemplazan placeholders en &lt;code&gt;string&lt;/code&gt; por valores, en nuestro caso, de variables en momento de ejecución.&lt;/p&gt;&#xA;&lt;h1 id=&#34;sintaxis&#34;&gt;Sintaxis&lt;/h1&gt;&#xA;&lt;pre&gt;&lt;code&gt;var manzanas = 4;&#xA;var bananas = 3;&#xA;&#xA;Console.WriteLine($&amp;quot;Tengo {manzanas} manzanas&amp;quot;);&#xA;Console.WriteLine($&amp;quot;Vendí {manzanas + bananas} frutas&amp;quot;);&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Basicamente son plantillas.&lt;/p&gt;&#xA;&lt;/blockquote&gt;</description>
</item>
<item>
<title>Anuncio Aoc 2023</title>
@@ -55,14 +55,14 @@
<link>https://fedesrv.ddns.net/posts/pasar-imagenes-a-blanco-y-negro/</link>
<pubDate>Sat, 23 Sep 2023 10:35:18 -0300</pubDate>
<guid>https://fedesrv.ddns.net/posts/pasar-imagenes-a-blanco-y-negro/</guid>
<description>&lt;h1 id=&#34;gimp&#34;&gt;Gimp&lt;/h1&gt;&#xA;&lt;p&gt;Hay varias formas de pasar una imagen a blanco y negro. yo prefiero la de usar &lt;strong&gt;Gimp&lt;/strong&gt; con la opcion de &lt;code&gt;Color &amp;gt; Desaturacion &amp;gt; Color a gama de grises&lt;/code&gt;. Pero voy a listar un par de métodos alternativos para obtener el ~mismo resultado.&lt;br&gt;&#xA;&lt;img src=&#34;https://fedesrv.ddns.net/fedecomp.png&#34; alt=&#34;Comparación&#34;&gt;&lt;/p&gt;&#xA;&lt;h1 id=&#34;imagemagick&#34;&gt;ImageMagick&lt;/h1&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Es un conjunto de utilidades de código abierto para mostrar, manipular y convertir imágenes, capaz de leer y escribir más de 200 formatos.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Una de esas utilidades es llamada &lt;code&gt;convert&lt;/code&gt;, la cual acepta un archivo y convierte este a el formato que se le especifique. Existe una flag llamada &lt;code&gt;-colorspace&lt;/code&gt; la cual si le damos el parametro &lt;strong&gt;Gray&lt;/strong&gt; la imagen resultante estará representada en una gama de grises.&#xA;&lt;img src=&#34;https://fedesrv.ddns.net/fedeg.jpg&#34; alt=&#34;Imagen en gama de grises&#34;&gt;&lt;/p&gt;</description>
<description>&lt;h1 id=&#34;gimp&#34;&gt;Gimp&lt;/h1&gt;&#xA;&lt;p&gt;Hay varias formas de pasar una imagen a blanco y negro. yo prefiero la de usar &lt;strong&gt;Gimp&lt;/strong&gt; con la opcion de &lt;code&gt;Color &amp;gt; Desaturacion &amp;gt; Color a gama de grises&lt;/code&gt;. Pero voy a listar un par de métodos alternativos para obtener el ~mismo resultado.&lt;br&gt;&#xA;&lt;img src=&#34;https://fedesrv.ddns.net/fedecomp.png&#34; alt=&#34;Comparación&#34;&gt;&lt;/p&gt;&#xA;&lt;h1 id=&#34;imagemagick&#34;&gt;ImageMagick&lt;/h1&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Es un conjunto de utilidades de código abierto para mostrar, manipular y convertir imágenes, capaz de leer y escribir más de 200 formatos.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Una de esas utilidades es llamada &lt;code&gt;convert&lt;/code&gt;, la cual acepta un archivo y convierte este a el formato que se le especifique. Existe una flag llamada &lt;code&gt;-colorspace&lt;/code&gt; la cual si le damos el parametro &lt;strong&gt;Gray&lt;/strong&gt; la imagen resultante estará representada en una gama de grises.&#xA;&lt;img src=&#34;https://fedesrv.ddns.net/fedeg.jpg&#34; alt=&#34;Imagen en gama de grises&#34;&gt;&lt;/p&gt;</description>
</item>
<item>
<title>Diseño de Software Incident</title>
<link>https://fedesrv.ddns.net/posts/dise%C3%B1o-de-software-incident/</link>
<pubDate>Fri, 22 Sep 2023 15:08:17 +0800</pubDate>
<guid>https://fedesrv.ddns.net/posts/dise%C3%B1o-de-software-incident/</guid>
<description>&lt;h1 id=&#34;instanciacion-del-sqlconnection&#34;&gt;Instanciacion del SqlConnection&lt;/h1&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-csharp&#34; data-lang=&#34;csharp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;using&lt;/span&gt; (&lt;span style=&#34;color:#66d9ef&#34;&gt;var&lt;/span&gt; connection = &lt;span style=&#34;color:#66d9ef&#34;&gt;new&lt;/span&gt; SqlConnection(configuration.GetConnectionString(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;DefaultConnection&amp;#34;&lt;/span&gt;)))&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Eso genera un sql connection que va a existir hasta que salga del scope del programa.&lt;/p&gt;&#xA;&lt;h1 id=&#34;creacion-del-sqlcommand&#34;&gt;Creacion del SqlCommand&lt;/h1&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-csharp&#34; data-lang=&#34;csharp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;using&lt;/span&gt; var command = &lt;span style=&#34;color:#66d9ef&#34;&gt;new&lt;/span&gt; SqlCommand();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;command.CommandText = &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;sp_RecuperaProductos&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;command.CommandType = System.Data.CommandType.StoredProcedure;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h1 id=&#34;apertura-de-la-coneccion&#34;&gt;Apertura de la coneccion&lt;/h1&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-csharp&#34; data-lang=&#34;csharp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;command.Connection = connection;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;command.Connection.Open();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;utilizacion-del-executereader&#34;&gt;Utilizacion del ExecuteReader&lt;/h2&gt;&#xA;&lt;p&gt;Es un choclo pero basicamente el codigo de abajo se encarga de iterar por cada uno de las entradas de la tabla. &lt;strong&gt;MUY&lt;/strong&gt; importante, se tiene que añadir los productos dentro del loop principal del reader ya que lo que no se guarde en cada iteracion se pierde. (los maps no son case sensitive).&lt;/p&gt;</description>
<description>&lt;h1 id=&#34;instanciacion-del-sqlconnection&#34;&gt;Instanciacion del SqlConnection&lt;/h1&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-csharp&#34; data-lang=&#34;csharp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;using&lt;/span&gt; (&lt;span style=&#34;color:#66d9ef&#34;&gt;var&lt;/span&gt; connection = &lt;span style=&#34;color:#66d9ef&#34;&gt;new&lt;/span&gt; SqlConnection(configuration.GetConnectionString(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;DefaultConnection&amp;#34;&lt;/span&gt;)))&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Eso genera un sql connection que va a existir hasta que salga del scope del programa.&lt;/p&gt;&#xA;&lt;h1 id=&#34;creacion-del-sqlcommand&#34;&gt;Creacion del SqlCommand&lt;/h1&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-csharp&#34; data-lang=&#34;csharp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;using&lt;/span&gt; var command = &lt;span style=&#34;color:#66d9ef&#34;&gt;new&lt;/span&gt; SqlCommand();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;command.CommandText = &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;sp_RecuperaProductos&amp;#34;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;command.CommandType = System.Data.CommandType.StoredProcedure;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h1 id=&#34;apertura-de-la-coneccion&#34;&gt;Apertura de la coneccion&lt;/h1&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-csharp&#34; data-lang=&#34;csharp&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;command.Connection = connection;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;command.Connection.Open();&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;utilizacion-del-executereader&#34;&gt;Utilizacion del ExecuteReader&lt;/h2&gt;&#xA;&lt;p&gt;Es un choclo pero basicamente el codigo de abajo se encarga de iterar por cada uno de las entradas de la tabla. &lt;strong&gt;MUY&lt;/strong&gt; importante, se tiene que añadir los productos dentro del loop principal del reader ya que lo que no se guarde en cada iteracion se pierde. (los maps no son case sensitive).&lt;/p&gt;</description>
</item>
<item>
<title>RetroArchivements</title>