Refactoring en C# con NDepend

Una de las cosas que me gusta mucho hacer en proyectos legacy es el refactoring en el código existente, en este proceso debemos ser cuidadosos de no afectar lo que ya esta en producción. En un escenario ideal tenemos pruebas unitarias y pruebas automatizadas para validar la calidad de nuestro proyecto. Existen ya muchas herramientas … Sigue leyendo Refactoring en C# con NDepend

BenchmarkDotNet librería opensource para benchmarking en .Net

BenchMark en computación se conoce como el acto o proceso para evaluar o realizar auditoria sobre diferentes componentes de la aplicación, como por ejemplo métodos y funciones en el concepto de programación orientada a objetos. BenchmarkDotNet es un proyecto opensource para .net diseñado para este proceso y facilitar cada una de las pruebas que deseemos hacer. … Sigue leyendo BenchmarkDotNet librería opensource para benchmarking en .Net

Ejecutando un sitio ASP.Net core en Linux

ASP.Net es una tecnologia opensource y multiplataforma por lo tanto podemos sin problemas crear, editar y publicar una aplicación en .net core en linux Microsoft nos explica facilmente desde su pagina oficial cuales son los comandos para instalr el SDK de .net core que vendria siendo el primer paso que debemos dar https://www.microsoft.com/net/core#linuxredhat para caso … Sigue leyendo Ejecutando un sitio ASP.Net core en Linux

Razor vs Tag helpers .Net core

En .Net core tenemos la posibilidad de utilizar Tag Helpers para diseñar nuestras vistas, esto nos permite omitir el uso de Razor y poder diseñar vistas simplemente extendiendo las propiedades de HTML con algunas especificas integradas. Hay que aclarar que podemos usar una combinación de Razor y tag herlpes en pocas podemos usar el uno, el … Sigue leyendo Razor vs Tag helpers .Net core

Definir página inicial en ASP.NET Core

Para definir una pagina por defecto en ASP.Net core simplemente tenemos que cambia la ruta por defecto del controlador app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=[controller]}/{action=[action]}/{id?}"); }); Si deseamos especificar una pagina HTML debemos usar el metodo DefaultFiles como muestra en el ejemplo DefaultFilesOptions DefaultFile = new DefaultFilesOptions(); DefaultFile.DefaultFileNames.Clear(); DefaultFile.DefaultFileNames.Add("MyPage.html"); app.UseDefaultFiles(DefaultFile); app.UseStaticFiles();

Usar StreamReader .Net core

En .Net core tenemos un problema usando la clase StreamReader para leer un archivo y es por que no podemos usar el constructor que usualmente recibe la ruta del archivo que deseamos leer El WorkAround para este caso es utilizar la clase File con el metodo open File.OpenText using (var myReader = File.OpenText("data/books.json")) { string str … Sigue leyendo Usar StreamReader .Net core

Error creando controller en visual 2017

Cuando creamos un proyecto tipo Api en visual 2017 puede ocurrir un error por el diseñador Para solucionar este inconveniente simplimente agregamos al archivo del proyecto .csproj los siguientes paquetes: <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="1.1.0-msbuild3-final" PrivateAssets="All" /> <ItemGroup> <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.0.0-msbuild3-final" /> <DotNetCliToolReference Include="Microsoft.Extensions.SecretManager.Tools" Version="1.0.0-msbuild3-final" /> <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.0-msbuild3-final" /> </ItemGroup>   Rereferencia: https://developercommunity.visualstudio.com/content/problem/5964/code-generator-error-creating-controller.html