把.net Core 项目迁移到VS2019 for MAC

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介:

把.net Core 项目迁移到VS2019 for MAC
VS2019 for MAC已经发布很长时间了,本以为项目移过去很麻烦,一直没有动作,最近呆家里快发霉了,决定研究研究,没想到一句代码都不需要动,直接完功,这下可以生产了。同学们可以放心整了。

本次平台的需求:

MAC OS : mac OS Catalina 10.15.3

VS 2019 : VS for Mac community 8.4.8

.net Core : Core 3.1

Sql Server : Docker Sql Server 2019 

原平台:

windows 10+vs2019 community+ core3.1 + sql server 2019

=========================

一、安装VS 2019
下地地址:https://visualstudio.microsoft.com/zh-hans/downloads/

这里不管你下载的是专业版,社区版,还是企业版,安装完成都是社区版,用你的ID登陆后,才会改变版本

安装很快完成,上手基本没有难度,和win版一样,宇宙最强IDE

测试新建一个项目运行,没有问题。可是之前的项目是sql server 的。于是开始使用Docker

Docker下载地址:https://www.docker.com

二、下载Docker Desktop for MAC 并 安装运行
配置国内镜像源:打开Docker 偏好设置,在Docker Engine添加地址就可以

(如果不配置那速度直接无法忍受,3k/s下载,我配置了一个阿里云的,还可以。)

阿里云容器镜像控制台:进入后,最下面有个镜像加速器,会给你一个加速地址。

三、使用Docker
使用Docker 时可以先了解一下常用的命令,这样可以更加快速

打开OS 控制台并在Docker 中打开Docker Hub

在搜索里查找Sql Server

进入页面可以看到微软官方的配置说明和一些版本说明

1.在控制台输入:
docker pull mcr.microsoft.com/mssql/server:2019-latest

开始下载镜像了,等待完成(好像之前配置的加速对mcr.microsoft.com没反应,我这里一直很慢。不知到多会了,反正晚上睡觉去了,第二天早上好了,看了下1.5G左右,下了很长时间。同样的,安装mysql只要几十秒就完成了)

2.查看镜像输入:docker images

3.运行sql server
控制台输入run:(注意一下:这里密码必须是强密码,不然会运行不起来)

docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Admin123456' -p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-latest
控制台输入ps查看运行状态:

docker ps

现在看到已经运行起来了。OK,开始get项目

四、迁移项目
1.打开项目或从git下载自己的项目
2.打开后会还原包,直到还原完成

3.打开项目的appsettings.json文件配置和Sql的链接文件:
1
2
3
4
5
6
7
8
9
10
11
12
{
  "ConnectionStrings": {
    "DefaultConnection": "Server=.;Database=aspnet-AquaWeb;User ID=SA;Password=Admin123456;MultipleActiveResultSets=true",
    "conn": "Server=.;Database=aspnet-AquaWeb-conn;User ID=SA;Password=Admin123456;MultipleActiveResultSets=true"
  },
  "Logging": {
    "LogLevel": {
      "Default": "Warning"
    }
  },
  "AllowedHosts": "*"
}
 

4.生成运行一下
前方高能,注意,是一句代码都没有改。运行一切正常,提示迁移数据库后,点一下就直接进入了。

用户管理用的是identity基础上做了升级,完全正常。

登陆到后台后把系统认成了windows19,硬盘容量是用WIM,所以认不到正常,webAPI正常,SignalR正常(因为用户统计是SignalR做的)

至此完成迁移。写这个记录一下二天里爬过的坑,以防大家入坑。

原文地址https://www.cnblogs.com/wangbin5542/p/12436135.html

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
18天前
|
jenkins 测试技术 持续交付
解锁.NET项目高效秘籍:从理论迷雾到实践巅峰,持续集成与自动化测试如何悄然改变游戏规则?
【8月更文挑战第28天】在软件开发领域,持续集成(CI)与自动化测试已成为提升效率和质量的关键工具。尤其在.NET项目中,二者的结合能显著提高开发速度并保证软件稳定性。本文将从理论到实践,详细介绍CI与自动化测试的重要性,并以ASP.NET Core Web API项目为例,演示如何使用Jenkins和NUnit实现自动化构建与测试。每次代码提交后,Jenkins自动触发构建流程,通过编译和运行NUnit测试确保代码质量。这种方式不仅节省了时间,还能快速发现并解决问题,推动.NET项目开发迈向更高水平。
33 8
|
18天前
|
架构师 开发者
【悬念揭秘】DDD:那片隐藏在软件深处的业务乐土——.NET项目如何借力领域驱动设计,让复杂业务逻辑迎刃而解?
【8月更文挑战第28天】领域驱动设计(DDD)在.NET项目中的应用聚焦于将业务领域知识与软件开发紧密结合,通过构建清晰的领域模型管理复杂业务逻辑。DDD的核心概念包括限界上下文、聚合、实体等,确保模型与实现的统一。在.NET中,通过CQRS和事件源等模式提高系统响应性和可扩展性,实现业务事件驱动的解耦与协作。DDD不仅是一种设计方法,更是要求开发者深入理解业务的文化,助力.NET项目应对复杂挑战,实现业务与技术的融合。
41 6
|
18天前
|
设计模式 存储 前端开发
揭秘.NET架构设计模式:如何构建坚不可摧的系统?掌握这些,让你的项目无懈可击!
【8月更文挑战第28天】在软件开发中,设计模式是解决常见问题的经典方案,助力构建可维护、可扩展的系统。本文探讨了.NET中三种关键架构设计模式:MVC、依赖注入与仓储模式,并提供了示例代码。MVC通过模型、视图和控制器分离关注点;依赖注入则通过外部管理组件依赖提升复用性和可测性;仓储模式则统一数据访问接口,分离数据逻辑与业务逻辑。掌握这些模式有助于开发者优化系统架构,提升软件质量。
31 5
|
16天前
|
开发框架 缓存 前端开发
实战.NET Framework 迁移到 .NET 5/6
从.NET Framework 迁移到.NET 5/6 是一次重要的技术革新,涵盖开发环境与应用架构的全面升级。本文通过具体案例详细解析迁移流程,包括评估现有应用、利用.NET Portability Analyzer 工具识别可移植代码、创建新项目、逐步迁移代码及处理依赖项更新等关键步骤。特别关注命名空间调整、JSON 序列化工具更换及数据库访问层重构等内容,旨在帮助开发者掌握最佳实践,确保迁移过程平稳高效,同时提升应用性能与可维护性。
47 2
|
18天前
|
Kubernetes 监控 Devops
【独家揭秘】.NET项目中的DevOps实践:从代码提交到生产部署,你不知道的那些事!
【8月更文挑战第28天】.NET 项目中的 DevOps 实践贯穿代码提交到生产部署全流程,涵盖健壮的源代码管理、GitFlow 工作流、持续集成与部署、容器化及监控日志记录。通过 Git、CI/CD 工具、Kubernetes 及日志框架的最佳实践应用,显著提升软件开发效率与质量。本文通过具体示例,助力开发者构建高效可靠的 DevOps 流程,确保项目成功交付。
41 0
|
18天前
|
开发框架 JSON 监控
实战指南:从 .NET Framework 迁移到 .NET 5/6 的策略与最佳实践
【8月更文挑战第28天】从 .NET Framework 迁移到 .NET 5/6 是一次重要的技术升级,涉及开发环境与应用架构的改进。本文通过具体案例分析,介绍迁移策略与最佳实践,帮助开发者顺利完成转变。
27 1
|
21天前
|
开发框架 .NET Docker
【Azure 应用服务】App Service .NET Core项目在Program.cs中自定义添加的logger.LogInformation,部署到App Service上后日志不显示Log Stream中的问题
【Azure 应用服务】App Service .NET Core项目在Program.cs中自定义添加的logger.LogInformation,部署到App Service上后日志不显示Log Stream中的问题
|
8天前
|
JSON 测试技术 C#
C#/.NET/.NET Core优秀项目框架推荐榜单
C#/.NET/.NET Core优秀项目框架推荐榜单
|
14天前
|
C# Windows 开发者
超越选择焦虑:深入解析WinForms、WPF与UWP——谁才是打造顶级.NET桌面应用的终极利器?从开发效率到视觉享受,全面解读三大框架优劣,助你精准匹配项目需求,构建完美桌面应用生态系统
【8月更文挑战第31天】.NET框架为开发者提供了多种桌面应用开发选项,包括WinForms、WPF和UWP。WinForms简单易用,适合快速开发基本应用;WPF提供强大的UI设计工具和丰富的视觉体验,支持XAML,易于实现复杂布局;UWP专为Windows 10设计,支持多设备,充分利用现代硬件特性。本文通过示例代码详细介绍这三种框架的特点,帮助读者根据项目需求做出明智选择。以下是各框架的简单示例代码,便于理解其基本用法。
54 0
|
14天前
|
Java Spring UED
Spring框架的异常处理秘籍:打造不败之身的应用!
【8月更文挑战第31天】在软件开发中,异常处理对应用的稳定性和健壮性至关重要。Spring框架提供了一套完善的异常处理机制,包括使用`@ExceptionHandler`注解和配置`@ControllerAdvice`。本文将详细介绍这两种方式,并通过示例代码展示其具体应用。`@ExceptionHandler`可用于控制器类中的方法,处理特定异常;而`@ControllerAdvice`则允许定义全局异常处理器,捕获多个控制器中的异常。
33 0