lunes, 9 de julio de 2018
Ahí van los enlaces recopilados durante la semana pasada. Espero que os resulten interesantes. :-)
.NET / .NET Core
- Pipelines - a guided tour of the new IO API in .NET, part 1
Marc Gravell - Prepare Visual Basic for Conversion to C#
Paul D. Sheriff - What C# can learn from Haskell: Pipe Operator
Daniel Cabtree - Optimising Image Processing
Indy Singh - Debugging through the .NET Core framework using VSCode (e.g. on Linux)
Vance Morrison - Create and Pack Reference Assemblies
Oren Novotny - C# 8: Pattern Matching Extended
Christian Nagel - Machine Learning with ML.NET – Solving Real-World Classification Problem (Wine Quality)
Nikola Živković - The Case For .Net Monkey Patching In 2018
Khalid Abuhakmeh - Using global tool “dotnet outdated” to check for the latest NuGet package updates
Shayne Boyer - Sending email in .NET Core with FluentEmail
Luke Lowrey* - The whole of WordPress compiled to .NET Core and a NuGet Package with PeachPie
Scott Hanselman - .NET JIT and CLR - Joined at the Hip
Matt Warren
Publicado por José M. Aguilar a las 8:55 a. m.
Nadie ha comentado la entrada, ¿quieres ser el primero?
Etiquetas: enlaces
martes, 3 de julio de 2018
ASP.NET Core 2.1 continúa profundizando en esa línea e incluye entre sus novedades el nuevo atributo
[ApiController]
, un decorador aplicable a controladores que los identifica como puntos de entrada de APIS, aplicando de forma automática una serie de convenciones bastante útiles a la hora de crear este tipo de componentes:[ApiController]
[Route("api/[controller]")]
public class ValuesController : ControllerBase
{
...
}
Fijaos que, a diferencia de ASP.NET Web API (.NET Framework), se ha optado por utilizar un atributo en lugar de emplear herencia (en aquél framework existía la clase ApiController
).
A continuación veremos qué debemos tener en cuenta a la hora de aplicar este atributo a nuestros controladores y qué convenciones son las que estaremos asumiendo al utilizarlo.
Publicado por José M. Aguilar a las 8:55 a. m.
Etiquetas: aspnetcore, aspnetcoremvc, novedades, webapi
lunes, 2 de julio de 2018
Ahí van los enlaces recopilados durante la semana pasada. Espero que os resulten interesantes. :-)
.NET / .NET Core
- Introducing .NET Core 2.1 Flagship Types: Span<T> and Memory<T>
Ahson A. Khan - Garbage collection, a memorandum on memory in C#
Carmel Eve - Using Flurl to easily build URLs and make testable HttpClient calls in .NET
Scott Hanselman - Machine Learning with ML.NET – Solving Real-World Regression Problem (Bike Sharing Demands)
Nikola Živković - Analyzing .NET Core project dependencies: Finding transitive dependencies
Jerrie Pelser - Deserializing different JSON structures to the same C# class
Jerrie Pelser - Using GOTO in C#
Ayende Rahien - Dynamic Binding in C#
Damir Arh - .NET Core and Docker
Scott Hanselman
Son ya ocho años consecutivos y debería haberme acostumbrado a este subidón de primeros de julio, pero, como no suelo ser consciente de que ha llegado el día de los nombramientos, sigo recibiendo el conocido email de nombramiento casi con la misma emoción que aquella primera vez en que me pilló completamente desprevenido.
Muchas gracias a todos vosotros, amigos y amigas de Variable not found, porque si estoy aquí es porque me habéis regalado vuestro incondicional apoyo durante todos estos años.
Muchas gracias también al equipo del programa MVP en Microsoft y, en particular, a nuestra querida MVP lead Cristina González, por el gran trabajo que realizan.
Muchas gracias todos los que dedicáis vuestro tiempo la comunidad, seáis MVP o no, porque hacéis posible que todos aprendamos y mejoremos un poco más cada día.
Y, por supuesto, muchas gracias también a mi mujer e hijas, Inma, Inmita y María, porque ellas son las que permiten, con su infinita paciencia y comprensión, que pueda dedicar a mi pasión por el software más de lo que estrictamente requieren mis obligaciones profesionales.
Aprovecho también para enviar mi enhorabuena a los MVP renovados recientemente, y un caluroso abrazo de bienvenida a los que lo han sido por primera vez (es un momento muy bonito, ¡disfrutadlo!)
Sólo espero estar a la altura de esta distinción, compartida con gente de todo el mundo a la que admiro tanto personal como profesionalmente, y entre los que me enorgullezco de contar con grandes amigos. Y ahora, con esta dosis extra de motivación, ¡a seguir trabajando!

Source: Giphy
Publicado en Variable not found.
martes, 26 de junio de 2018
@helper
para crear porciones de HTML reutilizables en el interior de nuestras vistas, tanto para conseguir un código más limpio como para abrazar el principio DRY (Don’t Repeat Yourself), tan frecuentemente apaleado en la capa de presentación.Recordaréis que esta directiva permitía crear “funciones” en cuyo interior podíamos escribir código Razor (mezclando marcado y C#) que podía ser invocado desde distintos puntos:
@* File: Test.cshtml *|
@Multiplication(2)
@Multiplication(3)
@helper Multiplication(int x)
{
<h2>Multiplication table of @x</h2>
<ul>
@for (var i = 1; i <= 10; i++)
{
<li>@x * @i = @(x * i)</li>
}
</ul>
}
Además de definirlos y consumirlos desde la misma vista, también era posible crear helpers globales introduciéndolos en App_Code
, aunque esta opción me gustaba menos y creo que no la utilicé jamás en aplicaciones reales.
Pues bien, por algunas extrañas razones, en ASP.NET Core la directiva @helper
no está disponible, lo que puede complicarnos un poco a la hora de portar vistas antiguas o, simplemente, cuando queramos usarla para mejorar la legibilidad de nuestro código.
lunes, 25 de junio de 2018
Ahí van los enlaces recopilados durante la semana pasada. Espero que os resulten interesantes. :-)
.NET / .NET Core
- NET Core 2.0 will reach End of Life on
September 1October 1, 2018
Rich Lander - NET Core 2.1 June Update
Rich Lander - Deep Dive into Microsoft Configuration
Travis Illig - Span for Audio
Mark Heath - Disposing of services when using Dependency Injection with .NET Core console apps
Jerrie Pelser - Staying up-to-date with .NET Container Images
Rich Lander -
Using ML.NET – Introduction to Machine Learning and ML.NET
Nikola Živković - Default Interface Methods in C# 8
Bassam Alugii - The RyuJIT transition is complete!
Bruce Forstall - Cómo Microsoft hizo que me volvieran a gustar otra vez .NET y C#
CampusMVP - Adding attribute to backing field of automated property
Gunnar Peipman - C# 8 & No More NullReferenceExceptions – What about legacy code?
Christian Nagel