asp.net mvc framework 4.8 升级到 net 8.0

首先仔细阅读官方给出的升级文档这是地址

简介 - Training | Microsoft Learn

跟据文档中的操作升级

升级之后可能会有大量报错,将报错都改好,运行

如果能正常运行起来那么恭喜你,一般是会有问题

我遇到的问题是项目启动不了,各种报错,改好错误之后能顺利生成了,看一下你的vs2022 是不是最新,更新到最新。

然后我贴出Program.cs 文件,供大家参考


using Microsoft.EntityFrameworkCore;
using XinHua2021.Models;
using YuanFuTouBao2022Core.Dao;


var builder = WebApplication.CreateBuilder(args);



// Add services to the container.
builder.Services.AddControllersWithViews();
builder.Services.AddControllersWithViews().AddRazorRuntimeCompilation();
//注入Session
builder.Services.AddSession();


var app = builder.Build();

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Home/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

app.UseHttpsRedirection();
app.UseStaticFiles(); 
app.UseSession();
app.UseRouting();
app.UseAuthorization();

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Login}/{action=Index}/{id?}");

app.Run();

直接启动运行,这时候项目就能启动了,再改一下js引用css引用,改一下数据库链接这里放出sqlserver 和 mysql 两种方式的数据库链接

首先要引入包

项目应该有这些包

sqlserver:

namespace XinHua2021.Models
{
	using Microsoft.EntityFrameworkCore;
	using NPOI.SS.Formula.Functions;
	using DbContext = Microsoft.EntityFrameworkCore.DbContext;

	public partial class mssql0081881Entities : DbContext
    {

		
		protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
		{
			string connString = @"Data Source=.;Initial Catalog=aa;Persist Security Info=True;User ID=a;Password=a;MultipleActiveResultSets=true;Encrypt=True;TrustServerCertificate=True;";//数据库连接字符串
			

			optionsBuilder.UseSqlServer(connString);
		}

		public virtual DbSet<YFTB_CfmMessages> YFTB_CfmMessages { get; set; }
        public virtual DbSet<YFTB_Config> YFTB_Config { get; set; }
    }
}

mysql :建一个类

using Microsoft.EntityFrameworkCore;
using System.Data.Entity;
using DbContext = Microsoft.EntityFrameworkCore.DbContext;

namespace YuanFuTouBao2022Core.Dao
{
	public class SqlContext : DbContext
	{
		protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
		{
			base.OnConfiguring(optionsBuilder);
			string connectStr = "server=.;port=3306;database=a;uid=a;pwd=a;CharSet=utf8";
			//注意了,下面的那么Version是mysql的版本号,8.0.3是我的版本号,你可以通过在cmd中输入
			//mysql --help查看自己的版本号
			optionsBuilder.UseMySql
				(connectStr, new MySqlServerVersion(new Version(8, 0, 29)));
		}

		protected override void OnModelCreating(ModelBuilder modelBuilder)
		{
			base.OnModelCreating(modelBuilder);
			modelBuilder.ApplyConfigurationsFromAssembly(this.GetType().Assembly);
		}

		public Microsoft.EntityFrameworkCore.DbSet<YFTB_LoginUser> YFTB_LoginUser { get; set; }
	}
}

基础类建好,分别把实体类在补充上 数据库这块就搞定了

在controller中就可以使用了

public class LoginController : Controller
{
    mssql0081881Entities db = new mssql0081881Entities();
	// GET: Login

	SqlContext sqlContext = new SqlContext();
	
	public IActionResult Index()
	{
		var a = sqlContext.YFTB_LoginUser.ToList();


		return View();
	}
		
}

再去修改 项目中controller和views具体的写法就好了。

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Microsoft .NET Framework 4.8是一个由微软开发的跨平台框架和运行时环境。它是用于开发和执行基于.NET技术的应用程序的一个重要组件。.NET Framework 4.8提供了许多功能和功能,以帮助开发人员构建强大且可靠的应用程序。 首先,.NET Framework 4.8支持多种编程语言,包括C#,Visual Basic和F#等。开发人员可以根据自己的喜好和需求选择适合的语言进行开发。 其次,.NET Framework 4.8提供了大量的类库和工具,使开发人员能够快速构建应用程序。这些类库涵盖了各种功能,如网络通信,线程管理,图形处理,数据库访问等。开发人员可以利用这些类库来简化开发过程,减少编写代码的工作量。 此外,.NET Framework 4.8还具有优秀的性能和安全性。它通过即时编译和资源管理等技术提供了高效的执行性能,并具有内置的安全机制来保护应用程序免受恶意软件和攻击的影响。 对于不同架构的计算机系统,.NET Framework 4.8提供了两个版本,即x86和x64。x86是32位版本,适用于运行在32位操作系统上的计算机;x64是64位版本,适用于运行在64位操作系统上的计算机。通过提供这两个版本,.NET Framework保证了其在不同计算机系统上的兼容性和可用性。 总之,Microsoft .NET Framework 4.8是一个强大且高效的开发工具,可以帮助开发人员构建各种类型的应用程序。无论是Web应用程序,桌面应用程序还是移动应用程序,.NET Framework 4.8都能提供所需的功能和性能。 ### 回答2: Microsoft .NET Framework 4.8是由微软开发的一个软件开发平台。它提供了许多编程接口和库,用于开发和执行各种类型的应用程序,包括桌面应用程序、Web应用程序、移动应用程序和云服务。 .NET Framework 4.8支持x86和x64两种架构。x86是指处理器的32位版本,而x64是指处理器的64位版本。在选择安装.NET Framework 4.8时,根据计算机的处理器架构进行选择,以确保软件能够正确地在计算机上运行。 对于x86架构的计算机,安装.NET Framework 4.8 (x86)版本是必要的。这个版本是为32位操作系统和32位应用程序设计的。它提供了用于开发和运行32位应用程序所需的接口和库。 对于x64架构的计算机,安装.NET Framework 4.8 (x64)版本是必要的。这个版本是为64位操作系统和64位应用程序设计的。它提供了用于开发和运行64位应用程序所需的接口和库。 在安装.NET Framework 4.8时,需要根据计算机的架构选择正确的版本,以确保软件能够正常工作。如果安装了错误的版本,可能会导致应用程序无法运行或出现错误。 总之,Microsoft .NET Framework 4.8 (x86 和 x64)是用于开发和执行各种类型的应用程序的软件开发平台。选择正确的版本取决于计算机的处理器架构,以确保软件能够正确地在计算机上运行。 ### 回答3: Microsoft .NET Framework 4.8是由微软公司开发的软件框架,适用于Windows操作系统。它提供了一个统一的编程模型,用于构建和运行各种类型的应用程序,包括桌面应用程序、Web 应用程序、移动应用程序和云服务。.NET Framework 4.8提供了广泛的功能和库,以支持开发人员创建高效、可靠和安全的应用程序。 .NET Framework 4.8可分为两个版本:x86和x64。x86版本是适用于32位操作系统的,而x64版本则适用于64位操作系统。这两个版本的主要区别在于它们所适用的系统架构不同。如果您使用的是32位操作系统,您应该选择安装x86版本。如果您使用的是64位操作系统,则可以选择安装x86或x64版本,具体选择取决于您的需求。 不论您选择安装哪个版本,.NET Framework 4.8都提供了许多重要的功能和改进。它包括对异步编程模型的改进,可帮助开发人员编写更高效和响应更快的应用程序。它还提供了对新的Windows通用Windows平台应用程序 (UWP) 的支持,这意味着您可以使用.NET Framework 4.8构建在Windows操作系统各个平台上运行的应用程序。 此外,.NET Framework 4.8还提供了诸如.NET Standard 2.0和ASP.NET Core 2.0之类的重要功能和更新,以便开发人员可以更轻松地在不同的平台上构建和部署应用程序。 总而言之,Microsoft .NET Framework 4.8是一个强大且功能丰富的软件框架,为开发人员提供了构建各种类型应用程序的工具和平台。它的x86和x64版本适用于不同的操作系统架构,而且提供了许多重要的功能和改进,使开发人员能够更高效、更安全地构建应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值