{"id":1630,"date":"2022-04-12T12:32:07","date_gmt":"2022-04-12T12:32:07","guid":{"rendered":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/?p=1630"},"modified":"2022-04-12T14:18:55","modified_gmt":"2022-04-12T14:18:55","slug":"net-6-quiero-mi-fichero-startup-cs","status":"publish","type":"post","link":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/net-6-quiero-mi-fichero-startup-cs\/","title":{"rendered":".NET 6: Quiero mi fichero Startup.cs"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1639\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6.jpg\" alt=\"\" width=\"1276\" height=\"774\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6.jpg 1276w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6-300x182.jpg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6-1024x621.jpg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6-768x466.jpg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6-610x370.jpg 610w\" sizes=\"auto, (max-width: 1276px) 100vw, 1276px\" \/><\/p>\n<p>Como ya cont\u00e9 en un\u00a0<a href=\"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/horror-no-encuentro-el-fichero-startup-cs\/\" target=\"_blank\" rel=\"noopener\">art\u00edculo anterior<\/a>,<strong>\u00a0.NET 6 no incluye fichero Startup.cs<\/strong> para apoyar los procesos de inicializaci\u00f3n de una soluci\u00f3n, sino que se implementa todo desde el propio Program.cs. Esto resulta beneficioso en proyectos simples pero, cuando aumentamos la complejidad, es posible que ese Program.cs comience a tener una cantidad de l\u00edneas poco manejable y se convierta en un fichero de \u00abc\u00f3digo espagueti\u00bb <strong>\u00bfQu\u00e9 soluciones tenemos para crear un fichero Startup.cs en .NET 6?<\/strong><\/p>\n<p><!--more--><\/p>\n<h2>A\u00f1adir una clase est\u00e1ndar<\/h2>\n<p>Es la opci\u00f3n que se nos puede ocurrir de forma m\u00e1s inmediata y tampoco llega a ser mala. De esta forma, s\u00f3lo necesitaremos <strong>crear un fichero<\/strong>, que podremos llamar como queramos pero que por consistencia deber\u00edamos llamar Startup.cs, y donde vamos a <strong>crear los m\u00e9todos\u00a0<\/strong>que esperar\u00edamos tener\u00a0<strong>que ser\u00e1n llamados desde Program.cs<\/strong>. De esta forma mejorar\u00edamos la legibilidad del c\u00f3digo y, por tanto, la mantenibilidad.<\/p>\n<h3>Fichero Startup.cs<\/h3>\n<pre class=\"brush: csharp; title: ; notranslate\" title=\"\">\r\npublic class Startup\r\n{\r\n    public IConfiguration Configuration { get; }\r\n \r\n    public Startup(IConfiguration configuration)\r\n    {\r\n        this.Configuration = configuration;\r\n    }\r\n \r\n    public void ConfigureServices(IServiceCollection services)\r\n    {\r\n        \/\/ ...\r\n    }\r\n \r\n    public void Configure(IApplicationBuilder app, IHostApplicationLifetime lifetime)\r\n    {\r\n        \/\/ ...\r\n    }\r\n}\r\n<\/pre>\n<h3>Llamadas desde Program .cs<\/h3>\n<p>El c\u00f3digo, en un Program.cs por defecto, podr\u00eda quedar de la siguiente forma.<\/p>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<pre class=\"brush: csharp; title: ; notranslate\" title=\"\">\r\nvar builder = WebApplication.CreateBuilder(args);\r\n \r\n\/\/ CREATE STARTUP INSTANCE\r\nvar startup = new Startup(builder.Configuration);\r\n \r\n\/\/ CONFIGURE SERVICES \r\nstartup.ConfigureServices(builder.Services);\r\n\/\/ Add services to the container.\r\n \r\nbuilder.Services.AddControllers();\r\n\/\/ Learn more about configuring Swagger\/OpenAPI at https:\/\/aka.ms\/aspnetcore\/swashbuckle\r\nbuilder.Services.AddEndpointsApiExplorer();\r\nbuilder.Services.AddSwaggerGen();\r\n \r\nvar app = builder.Build();\r\n \r\n\/* CONFIGURE LIFETIME *\/\r\nstartup.Configure(app, app.Lifetime);\r\n<\/pre>\n<h2>A\u00f1adir una clase con m\u00e9todos de extensi\u00f3n<\/h2>\n<p><strong>Esta soluci\u00f3n<\/strong>, aunque no aporta demasiados cambios, s\u00ed queresulta\u00a0algo m\u00e1s elegante que la anterior que es\u2026 m\u00e1s de andar por casa. Para ello, lo que podemos hacer es\u00a0<strong>usar\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/dotnet\/csharp\/programming-guide\/classes-and-structs\/extension-methods\" target=\"_blank\" rel=\"noreferrer noopener\">m\u00e9todos de extensi\u00f3n<\/a>\u00a0que nos permitan trabajar con los \u00abantiguos\u00bb m\u00e9todos de nuestro Startup.cs<\/strong>\u00a0directamente conectados a los objetos \u00abbuilder\u00bb y \u00abapp\u00bb. Es importante que tengamos en cuenta que\u00a0tanto la clase Startup\u00a0(o como la queramos llamar)\u00a0como los m\u00e9todos de extensi\u00f3n, deben ser est\u00e1ticos\u00a0y declarar el objeto que queremos extender.<\/p>\n<h3>Fichero Startup.cs<\/h3>\n<pre class=\"brush: csharp; title: ; notranslate\" title=\"\">\r\npublic static class Startup\r\n{\r\n    public static void ConfigureServices(this WebApplicationBuilder builder)\r\n    {\r\n        \/\/ ...\r\n \r\n        builder.Services.AddMicrosoftIdentityWebApiAuthentication(builder.Configuration, &quot;AzureAd&quot;);\r\n        builder.Services.AddControllers();\r\n    }\r\n \r\n    public static void Configure(this WebApplication app)\r\n    {\r\n        \/\/ ...\r\n \r\n        app.UseCors();\r\n \r\n        \/\/ Configure the HTTP request pipeline.\r\n        if (app.Environment.IsDevelopment())\r\n        {\r\n            app.UseSwagger();\r\n            app.UseSwaggerUI();\r\n        }\r\n        app.UseHttpsRedirection();\r\n        app.UseAuthorization();\r\n        app.MapControllers();\r\n    }\r\n<\/pre>\n<h3>Program.cs<\/h3>\n<div class=\"wp-block-syntaxhighlighter-code \">\n<div>\n<pre class=\"brush: csharp; title: ; notranslate\" title=\"\">\r\nvar builder = WebApplication.CreateBuilder(args);\r\n \r\n\/\/ Add services to the container.\r\n\/\/ CONFIGURE SERVICES \r\nbuilder.ConfigureServices();\r\n \r\nbuilder.Services.AddControllers();\r\n\/\/ Learn more about configuring Swagger\/OpenAPI at https:\/\/aka.ms\/aspnetcore\/swashbuckle\r\nbuilder.Services.AddEndpointsApiExplorer();\r\nbuilder.Services.AddSwaggerGen();\r\n \r\nvar app = builder.Build();\r\n \r\n\/\/ CONFIGURE APP IN YOUR STARTUP\r\napp.Configure();\r\n \r\napp.Run();\r\n<\/pre>\n<p>Como se puede ver, la soluci\u00f3n es m\u00e1s elegante que simplemente crear una clase e instanciarla o hacerlo creando m\u00e9todos est\u00e1ticos.<\/p>\n<h2>Conclusi\u00f3n<\/h2>\n<p>Aunque ya no disponemos del fichero Startup.cs como en versiones anteriores de .NET Core, s\u00ed que\u00a0<strong>podemos buscar alternativas en .NET 6 que nos separar el c\u00f3digo en ficheros<\/strong>\u00a0y as\u00ed\u00a0evitar convertir Program.cs en\u00a0c\u00f3digo espagueti\u00a0imposible de leer y mantener.<\/p>\n<p>Espero que os sirva de ayuda. Enjoy coding!<\/p>\n<\/div>\n<\/div>\n<\/div>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content --><span class=\"et_bloom_bottom_trigger\"><\/span>","protected":false},"excerpt":{"rendered":"<p>Como ya cont\u00e9 en un\u00a0art\u00edculo anterior,\u00a0.NET 6 no incluye fichero Startup.cs para apoyar los procesos de inicializaci\u00f3n de una soluci\u00f3n, sino que se implementa todo desde el propio Program.cs. Esto resulta beneficioso en proyectos simples pero, cuando aumentamos la complejidad, &hellip; <a href=\"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/net-6-quiero-mi-fichero-startup-cs\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":22,"featured_media":1639,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[70],"tags":[],"class_list":["post-1630","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-net"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v18.2.1 (Yoast SEO v28.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>.NET 6: Quiero mi fichero Startup.cs - Piensa en software, desarrolla en colores<\/title>\n<meta name=\"description\" content=\"Aunque ya no disponemos del fichero Startup.cs como en versiones anteriores de .NET Core, s\u00ed que\u00a0podemos buscar alternativas en .NET 6 para separar el c\u00f3digo en ficheros.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\".NET 6: Quiero mi fichero Startup.cs\" \/>\n<meta property=\"og:description\" content=\"Aunque ya no disponemos del fichero Startup.cs como en versiones anteriores de .NET Core, s\u00ed que\u00a0podemos buscar alternativas en .NET 6 para separar el c\u00f3digo en ficheros.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/\" \/>\n<meta property=\"og:site_name\" content=\"Piensa en software, desarrolla en colores\" \/>\n<meta property=\"article:published_time\" content=\"2022-04-12T12:32:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-04-12T14:18:55+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1276\" \/>\n\t<meta property=\"og:image:height\" content=\"774\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Santiago Porras Rodr\u00edguez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@saintwukong\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Santiago Porras Rodr\u00edguez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/dot-net-6-add-startup-cs\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/net-6-quiero-mi-fichero-startup-cs\\\/\"},\"author\":{\"name\":\"Santiago Porras Rodr\u00edguez\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/c84cf613b7c5b8d5e1f7625a3e4c8c27\"},\"headline\":\".NET 6: Quiero mi fichero Startup.cs\",\"datePublished\":\"2022-04-12T12:32:07+00:00\",\"dateModified\":\"2022-04-12T14:18:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/net-6-quiero-mi-fichero-startup-cs\\\/\"},\"wordCount\":580,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/dot-net-6-add-startup-cs\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2022\\\/04\\\/Net-6.jpg\",\"articleSection\":[\".NET\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blog.santiagoporras.com\\\/dot-net-6-add-startup-cs\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/net-6-quiero-mi-fichero-startup-cs\\\/\",\"url\":\"https:\\\/\\\/blog.santiagoporras.com\\\/dot-net-6-add-startup-cs\\\/\",\"name\":\".NET 6: Quiero mi fichero Startup.cs - Piensa en software, desarrolla en colores\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/dot-net-6-add-startup-cs\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/dot-net-6-add-startup-cs\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2022\\\/04\\\/Net-6.jpg\",\"datePublished\":\"2022-04-12T12:32:07+00:00\",\"dateModified\":\"2022-04-12T14:18:55+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/c84cf613b7c5b8d5e1f7625a3e4c8c27\"},\"description\":\"Aunque ya no disponemos del fichero Startup.cs como en versiones anteriores de .NET Core, s\u00ed que\u00a0podemos buscar alternativas en .NET 6 para separar el c\u00f3digo en ficheros.\",\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blog.santiagoporras.com\\\/dot-net-6-add-startup-cs\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blog.santiagoporras.com\\\/dot-net-6-add-startup-cs\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2022\\\/04\\\/Net-6.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2022\\\/04\\\/Net-6.jpg\",\"width\":1276,\"height\":774},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#website\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/\",\"name\":\"Piensa en software, desarrolla en colores\",\"description\":\"Las ventajas que te ofrece Microsoft Azure y el mundo.NET\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/c84cf613b7c5b8d5e1f7625a3e4c8c27\",\"name\":\"Santiago Porras Rodr\u00edguez\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g\",\"caption\":\"Santiago Porras Rodr\u00edguez\"},\"description\":\"Innovation Team Leader at ENCAMINA | MVP in Developer Technologies. Apasionado por las nuevas tecnolog\u00edas. Colaboro con la comunidad de desarrolladores escribiendo art\u00edculos en mi blog personal y ocasionalmente en CompartiMOSS.com. Adem\u00e1s, soy uno de los coordinadores de TenerifeDev, grupo de usuarios de .NET de Tenerife y de otros grupos como Comunidad Office 365. Puedes encontrarme en la red microparticipando en Twitter con el usuario @saintwukong\",\"sameAs\":[\"https:\\\/\\\/x.com\\\/saintwukong\"],\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/author\\\/en-tu-casa-o-en-la-mia\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":".NET 6: Quiero mi fichero Startup.cs - Piensa en software, desarrolla en colores","description":"Aunque ya no disponemos del fichero Startup.cs como en versiones anteriores de .NET Core, s\u00ed que\u00a0podemos buscar alternativas en .NET 6 para separar el c\u00f3digo en ficheros.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/","og_locale":"es_ES","og_type":"article","og_title":".NET 6: Quiero mi fichero Startup.cs","og_description":"Aunque ya no disponemos del fichero Startup.cs como en versiones anteriores de .NET Core, s\u00ed que\u00a0podemos buscar alternativas en .NET 6 para separar el c\u00f3digo en ficheros.","og_url":"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/","og_site_name":"Piensa en software, desarrolla en colores","article_published_time":"2022-04-12T12:32:07+00:00","article_modified_time":"2022-04-12T14:18:55+00:00","og_image":[{"width":1276,"height":774,"url":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6.jpg","type":"image\/jpeg"}],"author":"Santiago Porras Rodr\u00edguez","twitter_card":"summary_large_image","twitter_creator":"@saintwukong","twitter_misc":{"Escrito por":"Santiago Porras Rodr\u00edguez","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/#article","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/net-6-quiero-mi-fichero-startup-cs\/"},"author":{"name":"Santiago Porras Rodr\u00edguez","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/c84cf613b7c5b8d5e1f7625a3e4c8c27"},"headline":".NET 6: Quiero mi fichero Startup.cs","datePublished":"2022-04-12T12:32:07+00:00","dateModified":"2022-04-12T14:18:55+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/net-6-quiero-mi-fichero-startup-cs\/"},"wordCount":580,"commentCount":0,"image":{"@id":"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6.jpg","articleSection":[".NET"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/net-6-quiero-mi-fichero-startup-cs\/","url":"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/","name":".NET 6: Quiero mi fichero Startup.cs - Piensa en software, desarrolla en colores","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/#primaryimage"},"image":{"@id":"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6.jpg","datePublished":"2022-04-12T12:32:07+00:00","dateModified":"2022-04-12T14:18:55+00:00","author":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/c84cf613b7c5b8d5e1f7625a3e4c8c27"},"description":"Aunque ya no disponemos del fichero Startup.cs como en versiones anteriores de .NET Core, s\u00ed que\u00a0podemos buscar alternativas en .NET 6 para separar el c\u00f3digo en ficheros.","inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blog.santiagoporras.com\/dot-net-6-add-startup-cs\/#primaryimage","url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6.jpg","contentUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/04\/Net-6.jpg","width":1276,"height":774},{"@type":"WebSite","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#website","url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/","name":"Piensa en software, desarrolla en colores","description":"Las ventajas que te ofrece Microsoft Azure y el mundo.NET","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/c84cf613b7c5b8d5e1f7625a3e4c8c27","name":"Santiago Porras Rodr\u00edguez","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/626d42f63b21b55341f07a1a63002469e3b64521b19c99273621705f28165d74?s=96&d=mm&r=g","caption":"Santiago Porras Rodr\u00edguez"},"description":"Innovation Team Leader at ENCAMINA | MVP in Developer Technologies. Apasionado por las nuevas tecnolog\u00edas. Colaboro con la comunidad de desarrolladores escribiendo art\u00edculos en mi blog personal y ocasionalmente en CompartiMOSS.com. Adem\u00e1s, soy uno de los coordinadores de TenerifeDev, grupo de usuarios de .NET de Tenerife y de otros grupos como Comunidad Office 365. Puedes encontrarme en la red microparticipando en Twitter con el usuario @saintwukong","sameAs":["https:\/\/x.com\/saintwukong"],"url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/author\/en-tu-casa-o-en-la-mia\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts\/1630","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/users\/22"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/comments?post=1630"}],"version-history":[{"count":0,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts\/1630\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/media\/1639"}],"wp:attachment":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/media?parent=1630"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/categories?post=1630"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/tags?post=1630"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}