{"id":116330,"date":"2023-06-30T11:33:06","date_gmt":"2023-06-30T15:33:06","guid":{"rendered":"https:\/\/innowise.com\/?p=116330"},"modified":"2025-07-21T06:03:50","modified_gmt":"2025-07-21T10:03:50","slug":"migrating-to-latest-net-versions","status":"publish","type":"post","link":"https:\/\/innowise.com\/nb\/blog\/migrating-to-latest-net-versions\/","title":{"rendered":"Oppgrader spillet ditt: migrering til de nyeste .NET-versjonene"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"116330\" class=\"elementor elementor-116330\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-e6733c6 main-block elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"e6733c6\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-66 elementor-top-column elementor-element elementor-element-5af7f03c\" data-id=\"5af7f03c\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-40f647f9 elementor-widget elementor-widget-html\" data-id=\"40f647f9\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"breadcrumbs flex\">\n    <div class=\"info\"> \n    <a href=\"https:\/\/innowise.com\/\">\n  Main\n  <\/a>\n    <\/div>\n    <div class=\"info\">\n         <a href=\"https:\/\/innowise.com\/about-us\/\">\n  About us\n  <\/a>\n    <\/div>\n     <div class=\"info\">\n          <a href=\"https:\/\/innowise.com\/blog\/\">\n  Blog\n  <\/a>\n    <\/div>\n<\/div>\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\/\", \n  \"@type\": \"BreadcrumbList\", \n  \"itemListElement\": [{\n    \"@type\": \"ListItem\", \n    \"position\": 1, \n    \"name\": \"7 reasons Java is perfect for enterprise software development\",\n    \"item\": \"https:\/\/innowise.com\/blog\/java-for-enterprise-applications\/\"  \n  },{\n    \"@type\": \"ListItem\", \n    \"position\": 2, \n    \"name\": \"Blog\",\n    \"item\": \"https:\/\/innowise.com\/blog\/\"  \n  },{\n    \"@type\": \"ListItem\", \n    \"position\": 3, \n    \"name\": \"Name\",\n    \"item\": \"https:\/\/innowise.com\/\"  \n  }]\n}\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-78d33ae9 elementor-widget elementor-widget-html\" data-id=\"78d33ae9\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"article-info flex\">\n    <div class=\"info\"> \n    5 min read\n    <\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4f444666 elementor-widget elementor-widget-text-editor\" data-id=\"4f444666\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h1 class=\"title-tinder\"><span style=\"font-weight: 400; color: #ffffff;\">Upgrade your game: migrating to the latest .NET versions<\/span><\/h1>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2abf81ad elementor-widget elementor-widget-shortcode\" data-id=\"2abf81ad\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">[display_tags]<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-114bbf89 button-tinder elementor-hidden-tablet elementor-hidden-mobile\" data-id=\"114bbf89\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-163b650f article-description elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"163b650f\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b381776 author-article\" data-id=\"b381776\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4fd559d0 elementor-widget elementor-widget-text-editor\" data-id=\"4fd559d0\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">According to <\/span><a href=\"https:\/\/venturebeat.com\/business\/report-79-of-orgs-report-legacy-apps-hinder-digital-transformation\/\" target=\"_blank\" rel=\"noopener nofollow\"><span style=\"font-weight: 400;\">Venturebeat<\/span><\/a><span style=\"font-weight: 400;\">, the vast majority of companies (79%) believe legacy applications are hindering their organization\u2019s digital transformation initiatives. 91% of respondents agree or strongly agree that application modernization plays a critical role in their organization\u2019s adaptability to manage rapidly changing business conditions. A third (33%) of respondents said a lack of skills or expertise is their biggest challenge, while about a quarter struggle with a lack of budgets and investments (26%) or outdated processes and tools (25%).<\/span><\/p><p><a href=\"https:\/\/www.infosys.com\/services\/application-modernization\/insights\/modernization-radar-2022.html\" target=\"_blank\" rel=\"noopener nofollow\"><span style=\"font-weight: 400;\">Research conducted by Infosys<\/span><\/a><span style=\"font-weight: 400;\"> indicates that companies are actively engaged in the race to modernize their systems. The study highlights that within the next two years, approximately 50% of the global legacy application landscape is projected to undergo modernization. Furthermore, an even more significant transformation is anticipated, with 70-90% of obsolete applications expected to be modernized within the next five years.<\/span><\/p><p><span style=\"font-weight: 400;\">At Innowise, we understand the significance of staying ahead of the curve in the ever-evolving technology landscape. As the support period for .NET 7 concludes on May 24, 2024, and .NET 6 on November 24, 2024, it becomes imperative for businesses to consider migrating to the new versions of .NET. In this article, we explore the benefits of .NET migration, empowering businesses to make informed decisions and ensuring their digital infrastructure remains robust and future-proof.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-13611b2 e-con-full e-flex e-con e-parent\" data-id=\"13611b2\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-8212129 e-grid e-con-full e-con e-child\" data-id=\"8212129\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3cdb7d5 elementor-hidden-mobile elementor-widget elementor-widget-image\" data-id=\"3cdb7d5\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"841\" height=\"1054\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-1.png\" class=\"attachment-full size-full wp-image-155287\" alt=\"\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-1.png 841w, https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-1-239x300.png 239w, https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-1-817x1024.png 817w, https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-1-768x963.png 768w, https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-1-10x12.png 10w\" sizes=\"(max-width: 841px) 100vw, 841px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cbf3ace elementor-hidden-desktop elementor-hidden-tablet elementor-widget elementor-widget-image\" data-id=\"cbf3ace\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"434\" height=\"485\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-2.png\" class=\"attachment-full size-full wp-image-155288\" alt=\"\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-2.png 434w, https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-2-268x300.png 268w, https:\/\/innowise.com\/wp-content\/uploads\/2022\/10\/img-2-11x12.png 11w\" sizes=\"(max-width: 434px) 100vw, 434px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d88fba5 e-con-full e-flex e-con e-child\" data-id=\"d88fba5\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8fcfab3 elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading\" data-id=\"8fcfab3\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Stuck on an aging legacy system?<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0896d2b elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading\" data-id=\"0896d2b\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Boost the performance of your software by upgrading to the latest .NET version.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-99d4f63 elementor-align-center elementor-widget elementor-widget-button\" data-id=\"99d4f63\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/innowise.com\/contact-us\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Let us help<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b5a40d7 author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"b5a40d7\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Why should businesses upgrade their tech products to the latest software language versions?<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4f1fde6 elementor-widget elementor-widget-text-editor\" data-id=\"4f1fde6\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">According to a <\/span><a href=\"https:\/\/www.mckinsey.com\/capabilities\/strategy-and-corporate-finance\/our-insights\/how-covid-19-has-pushed-companies-over-the-technology-tipping-point-and-transformed-business-forever\" target=\"_blank\" rel=\"noopener nofollow\"><span style=\"font-weight: 400;\">McKinsey Global Survey<\/span><\/a><span style=\"font-weight: 400;\"> of executives, companies have accelerated the digitization of their customer and supply-chain interactions and internal operations by three to four years. This has helped them stay competitive in the new business and economic environment by adopting changes immediately. Security is another accelerator for digital transformation, as updating software can prevent cybercriminals from gaining access to sensitive corporate data.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b8689c3 elementor-widget elementor-widget-image\" data-id=\"b8689c3\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"640\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-01.png\" class=\"attachment-large size-large wp-image-116734\" alt=\"migrating to .NET\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-01.png 1000w, https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-01-300x240.png 300w, https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-01-768x614.png 768w, https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-01-15x12.png 15w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b566dea elementor-widget elementor-widget-text-editor\" data-id=\"b566dea\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>Performance and efficiency<\/h3>\n<span style=\"font-weight: 400;\">Newer software languages often come with performance enhancements and optimized features. They are designed to be more efficient, enabling faster code execution and improved resource utilization. Migrating to the latest language versions can significantly enhance the performance of tech products, resulting in better user experiences and increased productivity.\n\n<\/span>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9412440 elementor-widget elementor-widget-text-editor\" data-id=\"9412440\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>Security enhancements<\/h3>\n<span style=\"font-weight: 400;\">As technology evolves, so do security threats. Software language updates frequently include security patches and improvements to address vulnerabilities discovered in previous versions. Migrating to the latest language versions ensures that businesses&#8217; tech products have the most up-to-date security features, minimizing the risk of data breaches, cyberattacks, and other security incidents.\n<\/span>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0e4f151 elementor-widget elementor-widget-text-editor\" data-id=\"0e4f151\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>Compatibility and interoperability<\/h3>\n<span style=\"font-weight: 400;\">Software languages are constantly evolving, with new versions often introducing new features and syntax changes. By migrating to the latest versions, businesses can ensure compatibility with other software components, libraries, and frameworks, enabling seamless integration with third-party tools and systems, and facilitating collaboration and interoperability between different technologies.\n<\/span>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-09b3d4d elementor-widget elementor-widget-text-editor\" data-id=\"09b3d4d\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>Access to new functionality<\/h3><p><span style=\"font-weight: 400;\">Language updates often introduce new functionality and libraries that can enhance the capabilities of tech products. By migrating, businesses can leverage these new features to innovate, improve existing functionalities, and develop cutting-edge applications. Staying up-to-date with the latest software languages enables companies to remain competitive and meet evolving customer expectations.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-12ba88d elementor-widget elementor-widget-text-editor\" data-id=\"12ba88d\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>Community support and resources<\/h3>\n<span style=\"font-weight: 400;\">Popular software languages have large and vibrant developer communities. Migrating to the latest language versions ensures access to a wider range of community support, tutorials, code samples, and documentation. This can be immensely valuable for troubleshooting issues, acquiring knowledge, and accelerating development timelines. Businesses can tap into the collective expertise of the community to overcome challenges and foster continuous improvements that drive considerable benefits.\n<\/span>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4ce7655 elementor-widget elementor-widget-text-editor\" data-id=\"4ce7655\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3>Long-term maintainability<\/h3><p><span style=\"font-weight: 400;\">Using outdated software languages can result in legacy codebases that are difficult to maintain and enhance over time. As technology advances, developers proficient in older languages may become scarce, making it harder to find skilled resources for maintenance and updates. By migrating to the latest language versions, businesses can future-proof their tech products, ensuring that they remain maintainable and adaptable to rapidly changing business needs.<\/span><\/p><p><span style=\"font-weight: 400;\">Overall, migrating tech products to the latest software language versions brings numerous benefits, including improved performance, enhanced security, compatibility with other systems, access to new functionality, community support, and long-term maintainability. It empowers businesses to leverage the latest advancements in technology, stay ahead of the competition, and improve operational excellence.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7cd3b45 author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"7cd3b45\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><span style=\"font-weight: 400;\">Revamping legacy systems: unlocking business potential through software modernization<\/span><\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c9db103 elementor-widget elementor-widget-text-editor\" data-id=\"c9db103\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">The term &#8220;legacy system&#8221; refers to a system that fails to meet its intended performance goals, primarily determined by its inability to complete operational tasks rather than its age. Even a recently implemented solution can become a legacy if executed poorly. Such systems fall short of keeping pace with your business objectives, resulting in maintenance challenges, subpar user experience, lack of support, and inadequate handling of growing data volumes. Consequently, these issues hinder your business&#8217;s overall performance. This is precisely where legacy software modernization becomes an essential step forward.<\/span><\/p><p><span style=\"font-weight: 400;\">Apart from underwhelming performance, maintaining legacy systems can be prohibitively expensive. Neglecting to modernize your legacy software can deplete your budget due to various cost factors:<\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Maintenance and support<\/b><span style=\"font-weight: 400;\">. The cost of maintaining legacy systems often surpasses the initial development expenses within a span of five years since system deployment.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Integration and compliance<\/b><span style=\"font-weight: 400;\">. Regulatory requirements are periodically updated, and failure to meet them can lead to hefty penalties.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Security<\/b><span style=\"font-weight: 400;\">. Outdated security protocols pose significant risks, and without prioritizing security updates, data breaches can result in substantial financial losses.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Missed opportunities<\/b><span style=\"font-weight: 400;\">. A lack of innovation can have long-term implications for profitability. Failure to adapt to evolving market standards, customer demands, safety regulations, and quality criteria can result in missed business prospects.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Limited agility and efficiency<\/b><span style=\"font-weight: 400;\">. Embracing modernization and automation can greatly enhance process efficiency, often achieving up to a remarkable 50% increase.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><b>Brand reputation<\/b><span style=\"font-weight: 400;\">. Outdated software that lags, crashes, or appears unprofessional can significantly damage your brand reputation and scare away loyal customers.<\/span><\/li><\/ul><p><span style=\"font-weight: 400;\">You can only intensify the challenges associated with operating your business on aging systems by delaying the modernization of your legacy software. Taking on these challenges head-on is crucial to unlocking your organization&#8217;s full potential and thriving in the long run.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ed9800c elementor-widget elementor-widget-image\" data-id=\"ed9800c\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"640\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-02.png\" class=\"attachment-large size-large wp-image-116747\" alt=\"Migrating from .NET 7 to .NET 8&quot;\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-02.png 1000w, https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-02-300x240.png 300w, https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-02-768x614.png 768w, https:\/\/innowise.com\/wp-content\/uploads\/2023\/06\/net-migration-02-15x12.png 15w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1e50615 author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"1e50615\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><span style=\"font-weight: 400;\">Unleashing the power of .NET 8<\/span><\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-edc5702 elementor-widget elementor-widget-text-editor\" data-id=\"edc5702\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">.NET 6 and 7 are popular and widely used software frameworks employed by many businesses for their web applications and software development needs. However, as their support will end in 2024, businesses must understand why <\/span><span style=\"font-weight: 400;\">migrating from previous .NET versions to 8<\/span><span style=\"font-weight: 400;\"> should be a top priority. Here&#8217;s what&#8217;s new in .NET 8.<\/span><\/p><ol><li><span style=\"font-weight: 400;\"> Improved performance: unleash the full potential<\/span><\/li><\/ol><p><span style=\"font-weight: 400;\">Performance is a critical aspect of any software framework, and .NET 8 shines in this area. With a host of improvements, optimizations, and bug fixes, this latest version offers an unparalleled boost in overall performance. By leveraging these advancements, developers can build high-performing applications that deliver a seamless user experience.<\/span><\/p><ol start=\"2\"><li><span style=\"font-weight: 400;\"> Introducing C# 10: empowering developers<\/span><\/li><\/ol><p><span style=\"font-weight: 400;\">.NET 8 embraces the power of the new C# 10 language. This<\/span><span style=\"font-weight: 400;\"> upgrading to .NET 8<\/span><span style=\"font-weight: 400;\"> brings forth a myriad of enhancements, including new syntax, improved source generators, and an array of other language-level advancements. These additions empower developers to write cleaner, more concise code while enhancing productivity and maintainability.<\/span><\/p><ol start=\"3\"><li><span style=\"font-weight: 400;\"> Unleashing the potential of WebAssembly: unparalleled performance<\/span><\/li><\/ol><p><span style=\"font-weight: 400;\">In the era of web applications, performance plays a pivotal role. With .NET 8, developers can harness remarkable performance improvements for WebAssembly, enabling the creation of highly performant web apps. This newfound efficiency translates into faster loading times, smoother user interactions, and ultimately, a superior user experience.<\/span><\/p><ol start=\"4\"><li><span style=\"font-weight: 400;\"> Intuitive APIs: simplifying development tasks<\/span><\/li><\/ol><p><span style=\"font-weight: 400;\">.NET 8 introduces a set of new and intuitive APIs that simplify common development tasks. Notable additions include System.Text.Json.Serialization.Metadata and System.Net.Http.Json, which enhance working with JSON data and handling HTTP requests respectively. By streamlining these essential tasks, developers can save time, improve code quality, and deliver projects more efficiently with no scope creep.<\/span><\/p><ol start=\"5\"><li><span style=\"font-weight: 400;\"> Enriched library ecosystem: expanding possibilities<\/span><\/li><\/ol><p><span style=\"font-weight: 400;\">.NET 8 comes bundled with a range of new libraries that broaden the developer&#8217;s arsenal. Among these, System.CommandLine and System.Runtime.TieredCompilation stand out, providing developers with powerful tools to streamline command-line interfaces and optimize runtime performance. These additions facilitate the creation of high-quality applications that meet the most demanding velocity and responsiveness requirements.<\/span><\/p><ol start=\"6\"><li><span style=\"font-weight: 400;\"> Streamlined packaging: easier adoption, seamless integration<\/span><\/li><\/ol><p><span style=\"font-weight: 400;\">Recognizing the importance of smooth adoption across different platforms, .NET 8 introduces significant improvements to its packaging system. NuGet packages have been simplified, enabling faster installation and seamless discovery of libraries and dependencies. These enhancements make .NET 8 more accessible and user-friendly, ensuring developers can effortlessly leverage its capabilities across a wide range of platforms and deployment scenarios.<\/span><\/p><ol start=\"7\"><li><span style=\"font-weight: 400;\"> Enhanced Visual Studio integration: unleashing productivity<\/span><\/li><\/ol><p><span style=\"font-weight: 400;\">Seamless integration with development environments is crucial for developers&#8217; productivity, and .NET 8 delivers precisely that. With improved integration with Visual Studio, developers gain a powerful environment to create, debug, and deploy .NET Core projects with ease. This enhanced workflow eliminates unnecessary complexities, enabling developers to focus on what truly matters: building exceptional applications.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ea27957 author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"ea27957\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><span style=\"font-weight: 400;\">Case study: enhancing legacy system synchronization<\/span><\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-86411b4 elementor-widget elementor-widget-text-editor\" data-id=\"86411b4\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Currently, our team is working on a project to integrate legacy systems with a modern, microservice-based system for one of our clients. To achieve this, we have created various microservices that handle different functionalities, including classic CRUD microservices, synchronization mappers, and microservices for searching and creating bookings, among others. Initially, most of these microservices were built using .NET Core 3.1, which was a long-term support (LTS) version. However, we are now in the process of upgrading all our systems to .NET 6, with an LTS version as well.\u00a0<\/span><\/p><p><span style=\"font-weight: 400;\">Accordingly, we developed a microservice responsible for displaying information about bookings for selected locations within a specific period based on certain criteria, such as the number of participants and the availability of additional activities. Originally, this service was built using .NET Core 3.1. However, after upgrading it to .NET 6 and updating all the NuGet packages it relied on, we observed a 25% increase in performance without making any changes to the service&#8217;s code.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-14e7435 author-article-title elementor-widget elementor-widget-text-editor\" data-id=\"14e7435\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><span style=\"font-weight: 400;\">It is time to start <\/span><span style=\"font-weight: 400;\">planning for the .NET migration<\/span><\/h2>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e5866dd elementor-widget elementor-widget-text-editor\" data-id=\"e5866dd\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Application modernization is not a sudden event but rather a continuous journey. On this path, every organization takes incremental steps and may implement various technologies such as cloud computing, mobility solutions, advanced analytics, and cybersecurity. Legacy modernization follows an iterative approach, allowing organizations to transform their IT ecosystem to meet present and future business requirements while establishing a flexible foundation for future innovation.<\/span><\/p><p><span style=\"font-weight: 400;\">With the end of the support period for .NET 6, businesses now have an opportunity to embrace the future of .NET development. By migrating to the latest versions, organizations can take advantage of enhanced features, ensure robust security measures, and future-proof their digital infrastructure. At Innowise, we offer comprehensive <\/span><span style=\"font-weight: 400;\">.NET 8 migration services<\/span><span style=\"font-weight: 400;\"> to assist businesses in successfully navigating this migration. Our team is committed to providing <\/span><span style=\"font-weight: 400;\">.NET 8 migration solutions for businesses<\/span><span style=\"font-weight: 400;\">, empowering organizations to fully leverage the potential of the .NET framework and thrive in the ever-evolving digital landscape.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-bd3a954 e-con-full e-flex e-con e-parent\" data-id=\"bd3a954\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2777266 elementor-widget elementor-widget-heading\" data-id=\"2777266\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">FAQ<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-71b2f9d faq elementor-widget elementor-widget-accordion\" data-id=\"71b2f9d\" data-element_type=\"widget\" data-widget_type=\"accordion.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-accordion\">\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1191\" class=\"elementor-tab-title\" data-tab=\"1\" role=\"button\" aria-controls=\"elementor-tab-content-1191\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" tabindex=\"0\">What are the advantages of migrating to the latest .NET versions?<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1191\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"1\" role=\"region\" aria-labelledby=\"elementor-tab-title-1191\"><p><span style=\"font-weight: 400;\">Migrating to the latest .NET versions brings several advantages, including access to new features, improved performance, enhanced security, and ongoing support from Microsoft. Upgrading ensures compatibility with modern technologies, fosters innovation, and positions your application for continued growth and efficiency.<\/span><\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1192\" class=\"elementor-tab-title\" data-tab=\"2\" role=\"button\" aria-controls=\"elementor-tab-content-1192\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" tabindex=\"0\">What steps are involved in the migration process to the latest .NET framework?<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1192\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"2\" role=\"region\" aria-labelledby=\"elementor-tab-title-1192\"><p><span style=\"font-weight: 400;\">The migration process to the latest .NET framework typically involves a systematic approach. It includes assessing the current application, planning the migration strategy, updating code and dependencies, testing thoroughly, and finally, deploying the updated application.<\/span><\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-accordion-item\">\n\t\t\t\t\t<div id=\"elementor-tab-title-1193\" class=\"elementor-tab-title\" data-tab=\"3\" role=\"button\" aria-controls=\"elementor-tab-content-1193\" aria-expanded=\"false\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon elementor-accordion-icon-left\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-closed\"><i class=\"fas fa-plus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t<span class=\"elementor-accordion-icon-opened\"><i class=\"fas fa-minus\"><\/i><\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-accordion-title\" tabindex=\"0\">How does the latest .NET version enhance security and performance?<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-1193\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"3\" role=\"region\" aria-labelledby=\"elementor-tab-title-1193\"><p><span style=\"font-weight: 400;\">The latest .NET version elevates security and performance through advanced features such as enhanced security protocols, improved encryption algorithms, and optimized runtime performance. These upgrades not only fortify the application against potential threats but also contribute to faster execution and improved overall responsiveness.<\/span><\/p><\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<script type=\"application\/ld+json\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"What are the advantages of migrating to the latest .NET versions?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"<p><span style=\\\"font-weight: 400;\\\">Migrating to the latest .NET versions brings several advantages, including access to new features, improved performance, enhanced security, and ongoing support from Microsoft. Upgrading ensures compatibility with modern technologies, fosters innovation, and positions your application for continued growth and efficiency.<\\\/span><\\\/p>\"}},{\"@type\":\"Question\",\"name\":\"What steps are involved in the migration process to the latest .NET framework?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"<p><span style=\\\"font-weight: 400;\\\">The migration process to the latest .NET framework typically involves a systematic approach. It includes assessing the current application, planning the migration strategy, updating code and dependencies, testing thoroughly, and finally, deploying the updated application.<\\\/span><\\\/p>\"}},{\"@type\":\"Question\",\"name\":\"How does the latest .NET version enhance security and performance?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"<p><span style=\\\"font-weight: 400;\\\">The latest .NET version elevates security and performance through advanced features such as enhanced security protocols, improved encryption algorithms, and optimized runtime performance. These upgrades not only fortify the application against potential threats but also contribute to faster execution and improved overall responsiveness.<\\\/span><\\\/p>\"}}]}<\/script>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4eff73b4 elementor-widget elementor-widget-html\" data-id=\"4eff73b4\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"thank-rating\">\n    Thank you for rating!\n<\/div>\n<div class=\"thank-comment\">\n    Thank you for comment!\n<\/div>\n<script src=\"\/wp-content\/themes\/hello-elementor\/assets\/js\/blog\/rating-star.js\"><\/script>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4bb11db4 elementor-widget elementor-widget-html\" data-id=\"4bb11db4\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script src=\"\/wp-content\/themes\/hello-elementor\/assets\/js\/blog\/rating-star.js\"><\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-80b164b e-flex e-con-boxed e-con e-parent\" data-id=\"80b164b\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f001e58 elementor-widget elementor-widget-shortcode\" data-id=\"f001e58\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">[post_share]<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-16fd53c table-content-container\" data-id=\"16fd53c\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1861eb8 author-wrapper e-flex e-con-boxed e-con e-parent\" data-id=\"1861eb8\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e4b0fdd elementor-widget elementor-widget-html\" data-id=\"e4b0fdd\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"author-wrap\">\r\n      <div class=\"author-info\">\r\n        <img loading=\"lazy\" decoding=\"async\"\r\n        class=\"author-info__img\"\r\n          src=\"\/wp-content\/uploads\/2022\/02\/dima-naz.jpg\"\r\n          width=\"50\"\r\n          height=\"50\"\r\n          alt=\"author\"\r\n        \/>\r\n        <div class=\"author-info__personal-data\">\r\n          <a class=\"author-info__personal-data__name\" href=\"https:\/\/innowise.com\/authors\/dmitry-nazarevich\/\">\r\n            Dmitry Nazarevich\r\n          <\/a>\r\n          <span class=\"author-info__role\">CTO<\/span>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"author-gray-line\"><\/div>\r\n      <div class=\"author-date-publish\">\r\n        <span>Date:<\/span> <span>Jun 30, 2023<\/span>\r\n      <\/div>\r\n    <\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-section elementor-inner-section elementor-element elementor-element-4ee0216 elementor-section-full_width table-of-contents__sticky-container stickyWrapper72 elementor-section-height-default elementor-section-height-default\" data-id=\"4ee0216\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-dedde4e author-block\" data-id=\"dedde4e\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8a91bc3 ddcv elementor-widget elementor-widget-html\" data-id=\"8a91bc3\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n\r\n.stickyWrapper72{\r\n    position: sticky;\r\n    top: 72px;\r\n    bottom: auto;   \r\n}  \r\n\r\n<\/style>\r\n\r\n<script>\r\ndocument.addEventListener(\"DOMContentLoaded\", ()=>{\r\n        \r\nconst headerElement = document.querySelector(\".new-menu\");\r\n\r\nconst stickyElement = document.querySelector(\".stickyWrapper72\");\r\n\r\nconst headerElementH = headerElement.clientHeight;\r\n\r\n\r\nstickyElement.style.top =  headerElementH + 60 + \"px\";\r\n        \r\n});\r\n<\/script>\r\n\r\n<!--NOTE Change data-id in wrapper styles for hide this block on the mobile device screen-->\r\n<div class=\"toc-wrapper\">\r\n  <h4 class=\"toc-title\">Table of contents<\/h4>\r\n  <div class=\"toc toc-2\"><\/div>\r\n<\/div>\r\n\r\n<script>\r\n  \/\/NOTE Add the value from h2 as the key and the text you want to display as the key value in LINKS variable:\r\n  \/\/   const LINKS = {\r\n  \/\/       \"ORIGINAL_TEXT_FROM_H2\": \"CHANGED_TEXT\",\r\n  \/\/       \"ORIGINAL_TEXT_FROM_H2\": \"CHANGED_TEXT\",\r\n  \/\/       \"ORIGINAL_TEXT_FROM_H2\": \"CHANGED_TEXT\",\r\n  \/\/   }\r\n\r\n  const LINKS = {\r\n      \"Revamping legacy systems: unlocking business potential through software modernization\": \"Software modernization\", \"Case study: enhancing legacy system synchronization\":\"Case study\", \"It is time to start planning for the .NET migration\":\".NET migration\"\r\n      \r\n  };\r\n\r\n  const OFFSET = 70;\r\n   const PADDING_BOTTOM_FOR_SCROLL = 100;\r\n  let headerList = [];\r\n  let allLinks = [];\r\n  \r\n  let ticking = false;\r\n     \r\n\r\n  const createList = () => {\r\n      \r\n      console.log('create');\r\n      \r\n      \r\n    const tocTarget = document.querySelector(\".toc.toc-2\");\r\n    const toc = document.createElement(\"ul\");\r\n    \r\n    \r\n    \r\n     headerList = [...document.querySelectorAll(\"h2\")];\r\n\r\n\r\n    \r\n    headerList = headerList.slice(0, -3);\r\n    \r\n    const filteredNodes = [document.querySelector(\".related_content_blog_container h2\")]\r\n    \r\n    headerList = headerList.filter((node)=> !filteredNodes.includes(node))\r\n    \r\n    \r\n   headerList.forEach((header,index) => {\r\n      const headerId = header.getAttribute(\"id\");\r\n      const headerText =\r\n        header.dataset.title && header.dataset.title !== \"\"\r\n          ? header.dataset.title\r\n          : header.textContent;\r\n          \r\n\r\n      const headerTocText = header.dataset.title;\r\n\r\n      const idFromText =\r\n        !headerId || headerId === \"\"\r\n          ? headerText\r\n              .toLowerCase()\r\n              .replace(\/[^\\w ]+\/g, \"\")\r\n              .replace(\/ +\/g, \"-\")\r\n          : headerId;\r\n          \r\n         \r\n\r\n      const newListItem = document.createElement(\"li\");\r\n      const newLink = document.createElement(\"a\");\r\n      newLink.setAttribute(\"href\", \"#\" + idFromText);\r\n      newLink.textContent = LINKS[headerText] || headerText;\r\n\r\n      newLink.addEventListener(\"click\", (e) => {\r\n          \r\n        e.preventDefault();\r\n        const y =\r\n          header.getBoundingClientRect().top +\r\n          window.pageYOffset -\r\n          PADDING_BOTTOM_FOR_SCROLL -\r\n          OFFSET;\r\n          ticking = true; \r\n        window.scrollTo({ top: y, behavior: \"smooth\" });\r\n        \r\n        setTimeout(()=>{\r\n            ticking = false;\r\n        },500);\r\n        \r\n      });\r\n      \r\n\r\n      newListItem.appendChild(newLink);\r\n    toc.appendChild(newListItem);\r\n    \r\n    \r\n    });\r\n    tocTarget.appendChild(toc);\r\n    allLinks = Array.from(document.querySelector(\".toc.toc-2\").querySelectorAll(\"ul li\"));\r\n  };\r\n\r\n  const setContainerHeight = () => {\r\n    const windowHeight = window.innerHeight;\r\n    const tocContainer = document.querySelector(\".ddcv\");\r\n\r\n    tocContainer.style.maxHeight = \"calc(100vh - 230px)\";\r\n    tocContainer.style.minHeight = \"200px\";\r\n  };\r\n\r\n\r\n  const checkScroll = () => {\r\n      const windowHeight = window.innerHeight;\r\n      const scrollTop = window.scrollY || document.documentElement.scrollTop;\r\n\r\n      let selectedHeaderIndex = -1;\r\n\r\n      headerList.forEach((header, index) => {\r\n        \r\n  const posTop = header.getBoundingClientRect().top;\r\n       \r\n\r\n const isInViewport = posTop + elem.clientHeight <= window.innerHeight ;\r\n \r\n\r\n \r\n if(isInViewport){\r\n      selectedHeaderIndex = index;\r\n }\r\n        \r\n\r\n\r\n        \r\n      });\r\n      \r\n\r\n\r\n        allLinks.forEach((link, i) => {\r\n            if(i === selectedHeaderIndex){\r\n              link.classList.remove(\"pre-active\");  \r\n              link.classList.add(\"active\");\r\n            }\r\n            if(i < selectedHeaderIndex){\r\n              link.classList.add(\"pre-active\"); \r\n               link.classList.remove(\"active\");\r\n            }\r\n             if(i > selectedHeaderIndex){\r\n            link.classList.remove(\"pre-active\");\r\n            link.classList.remove(\"active\");\r\n            }\r\n            \r\n            \r\n            \r\n        });\r\n        \r\n\r\n\r\n  };\r\n\r\n  const loadAllImages = () => {\r\n    const images = document.getElementsByTagName(\"img\");\r\n\r\n    for (let i = 0; i < images.length; i++) {\r\n      const img = images[i];\r\n      const src = img.getAttribute(\"data-src\") || img.src;\r\n      img.src = src;\r\n    }\r\n  };\r\n\r\n  loadAllImages();\r\n  \r\n  \r\n  \r\n\r\n\r\n  document.addEventListener(\"DOMContentLoaded\", () => {\r\n      \r\n      \r\n     setTimeout(()=>{\r\n           createList();\r\n    setContainerHeight();\r\n  \r\n    \r\n    document.addEventListener(\"scroll\", (event) => {\r\n  if (!ticking) {\r\n    checkScroll();\r\n  }\r\n});\r\n    \r\n    \r\n},300) \r\n\r\n    \r\n  });\r\n\r\n\r\n  \r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-dfc93ef rate-article elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"dfc93ef\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-b4a9343 rate-article-first-block\" data-id=\"b4a9343\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-6db50f8 rate-container\" data-id=\"6db50f8\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9a22e7c rate-text elementor-widget elementor-widget-text-editor\" data-id=\"9a22e7c\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Rate this article:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-ee109ce rate-article-star-block\" data-id=\"ee109ce\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4f1f3ad elementor--star-style-star_unicode elementor-star-rating--align-left elementor-star-rating-tablet--align-left elementor-widget elementor-widget-star-rating\" data-id=\"4f1f3ad\" data-element_type=\"widget\" data-widget_type=\"star-rating.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n\t\t<div class=\"elementor-star-rating__wrapper\">\n\t\t\t\t\t\t<div class=\"elementor-star-rating\" title=\"4\/5\" itemtype=\"http:\/\/schema.org\/Rating\" itemscope=\"\" itemprop=\"reviewRating\"><i class=\"elementor-star-full\">&#9733;<\/i><i class=\"elementor-star-full\">&#9733;<\/i><i class=\"elementor-star-full\">&#9733;<\/i><i class=\"elementor-star-full\">&#9733;<\/i><i class=\"elementor-star-empty\">&#9733;<\/i> <span itemprop=\"ratingValue\" class=\"elementor-screen-only\">4\/5<\/span><\/div>\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-25 elementor-top-column elementor-element elementor-element-eabf73f\" data-id=\"eabf73f\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-e6c178a reviews elementor-widget elementor-widget-text-editor\" data-id=\"e6c178a\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>4.8\/5 (45 reviews)<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-c55ecdf rate-comment elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"c55ecdf\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-f922cee comment-article-first-block\" data-id=\"f922cee\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-66 elementor-top-column elementor-element elementor-element-2adc2a1\" data-id=\"2adc2a1\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t<div class=\"elementor-element elementor-element-b1e0cc5 e-flex e-con-boxed e-con e-parent\" data-id=\"b1e0cc5\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a3d29cb elementor-widget elementor-widget-shortcode\" data-id=\"a3d29cb\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f100240-o1\" lang=\"en-US\" dir=\"ltr\" data-wpcf7-id=\"100240\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/nb\/wp-json\/wp\/v2\/posts\/116330#wpcf7-f100240-o1\" method=\"post\" class=\"wpcf7-form init\" aria-label=\"Contact form\" enctype=\"multipart\/form-data\" novalidate=\"novalidate\" data-status=\"init\">\n<fieldset class=\"hidden-fields-container\"><input type=\"hidden\" name=\"_wpcf7\" value=\"100240\" \/><input type=\"hidden\" name=\"_wpcf7_version\" value=\"6.1\" \/><input type=\"hidden\" name=\"_wpcf7_locale\" value=\"en_US\" \/><input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f100240-o1\" \/><input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/><input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/><input type=\"hidden\" name=\"_wpcf7_recaptcha_response\" value=\"\" \/>\n<\/fieldset>\n<style>\n#form-templates .contact__info {\n  background-color: #f4f4f4;\n  padding: 70px 44px 70px 50px;\n  position: relative;\n  max-width: 540px;\n  width: 100%;\nborder: 1px solid #AEB1B7;\n}\n\n#form-templates .contact__info-background {\n  z-index: -1;\n  position: absolute;\n  top: 20px;\n  left: 20px;\n  width: 100%;\n  height: 100%;\n  border: 1px dashed #ef4557;\n}\n\n\n#form-templates .new-container{\ndisplay: flex;\njustify-content: space-between;\nflex-wrap: wrap;\n}\n\n\n#form-templates{\npadding: 100px 15px 100px 15px;        \n}\n\n#form-templates .contact__info-heading {\n  font-family: 'Sora' !important;\n  font-style: normal !important;\n  font-weight: 400 !important;\n  font-size: 36px !important;\n  line-height: 46px !important;\n  color: #2E2E2E !important;\n   margin-bottom: 60px !important;\n\n}\n\n\n#form-templates .message label{\ncolor: #585858 !important;   \n}\n\n.elementor-widget-container.form-template h2,.elementor-widget-container.form-template h1{\n font-size: 60px !important;\n  line-height: 70px !important;\n  font-family: \"Sora\", Sans-serif;\n  font-weight: 400;\n  margin: 0;  \n  margin-bottom: 20px;\n}\n\n\n\n\n.elementor-widget-container.form-template p{\n  font-family: \"Karla\", Sans-serif;\n  font-size: 22px;\n  font-weight: 400;\n  line-height: 28px;\n  color: var( --e-global-color-primary );\n  max-width: 700px;\n  margin: 0; \n  margin-bottom: 40px;\n} \n  \n\n\n.new-container #spinner{\nwidth: 50%;\nmax-width: 700px;\n}\n\n\n#form-templates .new-container #spinner div.contact-us__wrapper:nth-child(6){\ngap:30px; \n    \n}\n\n\n#form-templates .contact__info-heading {\n  margin-bottom: 67px;\n  font-size: 36px;\n  font-family: karla;\n  color:  #2E2E2E;\n\n  line-height: 49px;\n}\n\n#form-templates .contact__info-steps {\n  display: flex;\n  flex-direction: column;\n  max-width: 425x;\n  row-gap: 20px;\n  border-left: 1px solid #2e2e2e;\n}\n\n#form-templates .contact__info-block {\n  position: relative;\n  padding-left: 45px;\n}\n\n#form-templates .contact__info-block:last-child {\n  box-shadow: -1px 0 0 1px #f4f4f4;\n}\n\n#form-templates .contact__info-step {\n  position: absolute;\n  border: 1px solid #2e2e2e;\n  width: 40px;\n  height: 40px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border-radius: 20px;\n  left: -20px;\n  top: -8px;\n  background-color: #F4F4F4;\n  color:  #2E2E2E;\n\nfont-family: Karla;\nfont-weight: 700;\nfont-size: 18px;\nline-height: 28px;\n\n}\n\n.elementor-widget-global .contact__info-step {\n        color:  #2E2E2E;\n}\n\n#form-templates .contact__info-text {\n  margin: 0;\n  font-size: 16px;\n  line-height: 26px;\n  color: #2E2E2E;\n  font-family: karla;\n\n  width: 100%;\n}\n\n\n#form-templates .contact-us__send{\nflex-shrink: 0;\nmargin-top:0;\n}\n\n\n\n@media screen and (max-width: 1279px) {\n    .new-container #spinner{\n        width: 100%;\n        max-width:100%;\n        margin-bottom:40px;\n    }\n    \n\n    .new-container .contact__info {\n        max-width: 700px !important;\n    }\n    \n}\n\n\n@media screen and (max-width: 1279px) {\n#form-templates{\npadding: 60px 15px 70px 15px;     \n}\n}\n\n\n\n@media screen and (max-width: 767px) {\n\n#form-templates .new-container #spinner div.contact-us__wrapper:nth-child(6){\ngap:20px; \n \n}\n\n\n  #form-templates .contact__info {\n    padding: 20px 20px 40px 40px;\n    margin: 0 auto;\n  }\n\n\n#form-templates{\npadding: 40px 15px 50px 15px;  \n    \n}\n\n  \n   .new-container #spinner{\n       \n    margin-bottom:30px;   \n   }\n   \n   \n   .elementor-widget-container.form-template h2,.elementor-widget-container.form-template h1{\n   font-size: 32px !important;\n    line-height: 42px !important;    \n   }\n   \n   \n   .elementor-widget-container.form-template p{\n       \n    font-size: 16px;\n    line-height: 20px;  \n    margin-bottom: 30px;\n \n       \n   }\n   \n   #form-templates .contact__info-heading{\n   font-size: 24px !important;\n    line-height: 49px !important;    \n       \n   }\n   \n\n.mailToContact{\nmargin-top: 10px !important;        \n}\n   \n\n  #form-templates .contact__info-heading {\n    font-size: 24px;\n    margin-bottom: 37px;\n  }\n\n  #form-templates .contact__info-background {\n    top: 10px;\n    left: 10px;\n  }\n\n  #form-templates .contact__info-text {\n    font-size: 12px;\n    line-height: 20px;\n  }\n  \n  \n  #form-templates .contact__info-heading {\n   margin-bottom: 35px !important;\n\n}\n\n}\n\n@media (max-width: 767px) {\n    .mailToContact {\n        max-width: 100%;\n    }\n}\n<\/style>\n\n<script>\nwindow.addEventListener('hashchange',function(e){if(window.history.pushState){window.history.pushState('','\/',window.location.pathname)}else{window.location.hash=''}})\n<\/script>\n\n\n<div id=\"form-templates\">\n<div class=\"elementor-widget-container form-template\">\n<a name=\"contact-form\"><\/a>\n<h2>Contact us<\/h2>\n<p><a id=\"calendlylink\" style=\"color: #c63031; border-bottom: 1px solid #c63031; padding: 0;\">Book a call<\/a> or fill out the form below and we\u2019ll get back to you once we\u2019ve processed your request.<\/p>\n<\/div>\n\n<div class=\"new-container\">\n\n\n<div class=\"contact-us__main\" id=\"spinner\" data-no-defer=\"1\">\n\n<div class=\"contact-us__wrapper\">\n\n<div class=\"name\">\n<label>Name<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"field_name\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required contact-us__name\" id=\"contact-name\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Name*\" value=\"\" type=\"text\" name=\"field_name\" \/><\/span>\n<\/div>\n\n<div class=\"company\">\n<label>Company<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"company\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required contact-us__company\" id=\"contact-company\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Company*\" value=\"\" type=\"text\" name=\"company\" \/><\/span>\n<\/div>\n\n<\/div>\n\n<div class=\"contact-us__wrapper\">\n\n<div class=\"email\">\n<label>Email<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"email\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email contact-us__email\" id=\"contact-email\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Corporate email*\" value=\"\" type=\"email\" name=\"email\" \/><\/span>\n<\/div>\n\n<div class=\"phone\">\n<label>Phone<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"tel\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-tel wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-tel contact-us__phone\" id=\"contact-phone\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Phone*\" value=\"\" type=\"tel\" name=\"tel\" \/><\/span>\n<\/div>\n\n<\/div>\n<div class=\"contact-us__wrapper subj\">\n<span class=\"wpcf7-form-control-wrap\" data-name=\"your-recipient\"><select class=\"wpcf7-form-control wpcf7-select\" id=\"form-field-subj_js\" aria-invalid=\"false\" name=\"your-recipient\"><option value=\"\">Subject*<\/option><option value=\"IT staff augmentation\">IT staff augmentation<\/option><option value=\"Turnkey product development\">Turnkey product development<\/option><option value=\"Support and enhancement\">Support and enhancement<\/option><option value=\"Careers\">Careers<\/option><option value=\"Other\">Other<\/option><\/select><\/span>\n\n<span class=\"wpcf7-form-control-wrap\" data-name=\"form-field-budget_js\"><select class=\"wpcf7-form-control wpcf7-select\" id=\"form-field-budget_js\" aria-invalid=\"false\" name=\"form-field-budget_js\"><option value=\"\">Project budget<\/option><option value=\"Under $15K\">Under $15K<\/option><option value=\"$15K-$30K\">$15K-$30K<\/option><option value=\"$30K-$100K\">$30K-$100K<\/option><option value=\"$100K-$250K\">$100K-$250K<\/option><option value=\"$250K-$500K\">$250K-$500K<\/option><option value=\"More than $500K\">More than $500K<\/option><\/select><\/span>\n\n<\/div>\n\n\n<div class=\"message\">\n<label>Message<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"message\"><textarea cols=\"40\" rows=\"1\" maxlength=\"2000\" class=\"wpcf7-form-control wpcf7-textarea wpcf7-validates-as-required contact-us__message\" id=\"contact-message\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Describe your needs in detail*\" name=\"message\"><\/textarea><\/span>\n<\/div>\n\n<div class=\"atvoice-wrap\">\n\n<div class=\"voice-wrap\">\n<span id=\"voice-mut\" class=\"voicetext\">Send us a voice message<\/span>\n         <div class=\"qc_voice_audio_wrapper\">\n            <div class=\"qc_voice_audio_container\">\n                <div class=\"qc_voice_audio_upload_main\" id=\"qc_audio_main\">\n                    <a class=\"qc_audio_record_button\" id=\"qc_audio_record\" href=\"#\" aria-label=\"Record an audio message\">\n                        <span class=\"dashicons dashicons-microphone\"><\/span> \u00a0<\/a> \n                <\/div>\n\n                <div class=\"qc_voice_audio_recorder\" id=\"qc_audio_recorder\" style=\"display:none\">\n\n                <\/div>\n                <div class=\"qc_voice_audio_display\" id=\"qc_audio_display\"  style=\"display:none\">\n                    <audio id=\"qc-audio\" controls src=\"\"><\/audio>\n                    <span title=\"Remove and back to main upload screen.\" class=\"qc_audio_remove_button dashicons dashicons-trash\"><\/span>\n                <\/div>\n            <\/div>\n            <input type=\"hidden\" value=\"\" name=\"qcwpvoicemessage\" id=\"qc_audio_url\" \/>\n        <\/div>\n        \n<\/div>\n\n\n<div class=\"attach-wrap\">\n<span class=\"voicetext\">Attach documents<\/span>\n\n<div class='attachment'>\n\n<div class=\"downloaded\">\n<span><\/span>\n<div class=\"deleteFile\"><\/div>\n<\/div>\n\n<div class=\"attachmentButton\" onclick=\"(function cl(e){if(e.target.nodeName == 'DIV'){e.target.parentNode.children[1].children[0].click(); }})(arguments[0]);\">\n\n<div class=\"innerText\">Upload file<\/div>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"att-files\"><input size=\"40\" class=\"wpcf7-form-control wpcf7-file\" accept=\".jpg,.png,.jpeg,.pdf\" aria-invalid=\"false\" type=\"file\" name=\"att-files\" \/><\/span>\n\n<div class=\"tip\" onclick=\"event.stopPropagation()\">\n<p>You can attach 1 file up to 2MB. Valid file formats: pdf, jpg, jpeg, png.<\/p>\n<\/div>\n\n<\/div>\n\n<\/div>\n\n<\/div>\n\n\n\n<\/div>\n\n<div class=\"contact-us__wrapper\"> \n<p class=\"pp\">By clicking Send, you consent to Innowise processing your personal data per our<a href=\"\/privacy-notice\/\"> Privacy Policy <\/a>to provide you with relevant information. By submitting your phone number, you agree that we may contact you via voice calls, SMS, and messaging apps. Calling, message, and data rates may apply.<\/p>\n\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"scoring_point\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmCampaign\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmContent\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmMedium\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmSource\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmTerm\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"location\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"city\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"ip\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"Summ\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"gclid\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"rating\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"urlCompany\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"urlWithParams\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"audioMessageLink\" \/>\n<input class=\"wpcf7-form-control wpcf7-submit has-spinner contact-us__send\" id=\"contact-send-button\" type=\"submit\" value=\"Send\" \/>\n<\/div>\n\n<div class='mailToContact'>You can also send us your request <\/br>to <a href=\"mailto:contact@innowise.com\">contact@innowise.com<\/a><\/div>\n\n<\/div>\n\n<div class=\"elementor-widget-container\" style=\"z-index:1;\">\n<div class=\"contact__info\">\n  <div class=\"contact__info-background\"><\/div>\n  <div class=\"contact__info-heading\">What happens next?<\/div>\n  <div class=\"contact__info-steps\">\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">1<\/div>\n      <p class=\"contact__info-text\">Once we\u2019ve received and processed your request, we\u2019ll get back to you to detail your\n        project needs and sign an NDA to ensure confidentiality.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">2<\/div>\n      <p class=\"contact__info-text\">After examining your wants, needs, and expectations, our team will devise a project\n        proposal with the scope of work, team size, time, and cost estimates.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">3<\/div>\n      <p class=\"contact__info-text\">We\u2019ll arrange a meeting with you to discuss the offer and nail down the details.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">4<\/div>\n      <p class=\"contact__info-text\">Finally, we\u2019ll sign a contract and start working on your project right away.<\/p>\n    <\/div>\n  <\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\n\n<\/div>\n\n<\/div><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<\/form>\n<\/div>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"related_content_blog_container\">[related_content_list]<\/div><script>\n            jQuery( document ).ready(function($) {\n            var parentSection = $('[data-elementor-type=\"wp-page\"]');\n            if($('[data-elementor-type=\"wp-post\"]').length){\n                var parentSection = $('[data-elementor-type=\"wp-post\"]');\n            }\n            \n                parentSection.children().last().before($('.related_content_blog_container'));\n            });\n            <\/script><div class=\"other_services_container\">[need_other_services_v2]<\/div><script>\n                    jQuery( document ).ready(function($) {\n                        var parentSection = $('[data-elementor-type=\"wp-page\"]');\n                        if($('[data-elementor-type=\"wp-post\"]').length){\n                            var parentSection = $('[data-elementor-type=\"wp-post\"]');\n                        }\n                        \n                        console.log(parentSection);\n                        parentSection.children().last().before($('.other_services_container'));\n                        var sections = parentSection.find('.net-15.dt-16');\n                        for(var i = 0; i<sections.length; i++){\n                            if($(sections[i]).hasClass( 'net-15' ) && $(sections[i]).hasClass( 'dt-16' ) && $(sections[i]).hasClass( 'elementor-hidden-desktop' )==false){\n                                $(sections[i]).before($('.other_services_container'));   \n                            }\n                        }\n                        \n                    });\n                <\/script>","protected":false},"excerpt":{"rendered":"<p>Main About us Blog 5 min read Upgrade your game: migrating to the latest .NET versions [display_tags] According to Venturebeat, the vast majority of companies (79%) believe legacy applications are hindering their organization\u2019s digital transformation initiatives. 91% of respondents agree or strongly agree that application modernization plays a critical role in their organization\u2019s adaptability to [&hellip;]<\/p>\n","protected":false},"author":22,"featured_media":116742,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"elementor_header_footer","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[128,1021],"class_list":["post-116330","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","category-dmitry_author","tag-migration"],"acf":[],"_links":{"self":[{"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/posts\/116330","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/users\/22"}],"replies":[{"embeddable":true,"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/comments?post=116330"}],"version-history":[{"count":0,"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/posts\/116330\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/media\/116742"}],"wp:attachment":[{"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/media?parent=116330"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/categories?post=116330"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/innowise.com\/nb\/wp-json\/wp\/v2\/tags?post=116330"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}