Dotnet核心api挂在Ubuntu 20.04上

时间:2020-07-01 08:04:40

标签: asp.net-core .net-core ubuntu-20.04

我已经构建了一个Asp.net核心API,当我开始在 Linux ubuntu 20.4 上进行开发时,该应用程序冻结了,甚至没有引发任何异常 这是我的代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Identity;
using Microsoft.EntityFrameworkCore;

namespace passman.core
{
    public class DbInitializer
    {
        public static async Task SeedUser(UserManager<ApplicationUser> userManager)
        {
            try
            {
                var systemUser = await userManager.FindByNameAsync("system");
                if (systemUser == null)
                {
                    systemUser = new ApplicationUser
                    {
                        DateOfBirth = DateTime.Now,
                        Email = "system@domain.com",
                        UserName = "system",
                        FullName = "Sys Admin"
                    };
                    await userManager.CreateAsync(systemUser, "ABCD1230@abcd");
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
    }
}

在调试应用程序时,一旦到达此语句var systemUser = await userManager.FindByNameAsync("system");

,执行就会冻结

这显然是在调用我正在使用身份进行身份验证/授权的数据库,但这是在对数据库执行任何查询时发生的。

但是,使相同的代码运行旧版本的Ubuntu LTS 18.04并在Manjaro 20.0.3和Windows 10上进行了测试的奇怪之处在于,它按预期工作。

Ubuntu 20.04 Execution Ubuntu 20.04 SDK Information

Manjaro 20.0.3 Execution enter image description here

Windows 10 enter image description here enter image description here

数据库信息:

Microsoft SQL Server 2016 (SP1-GDR) (KB4505219) - 13.0.4259.0 (X64) 
 Jun 15 2019 19:20:12 
 Copyright (c) Microsoft Corporation
 Enterprise Edition (64-bit) on Windows Server 2012 R2 Standard 6.3 <X64> (Build 9600: ) (Hypervisor)

1 个答案:

答案 0 :(得分:0)

将我的SQL server从2016年升级到2017年,现在可以运行了,可能是dotnet core上的Ubuntu 20.04的错误