.net core 2.1-----Sql Server数据库初体验

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: 刚开始接触asp.net core,在学习的过程中遇到了一些小问题,在这里记录一下!在我们项目的开发过程中,肯定会和数据库打交道,所以我尝试了一下用asp.net core链接数据库,并读取表中的数据(当然你必须保证有能访问的sql server数据库)!首先,新建项目:ASP.

刚开始接触asp.net core,在学习的过程中遇到了一些小问题,在这里记录一下!

在我们项目的开发过程中,肯定会和数据库打交道,所以我尝试了一下用asp.net core链接数据库,并读取表中的数据(当然你必须保证有能访问的sql server数据库)!

首先,新建项目:ASP.NET Core Web应用程序

点击“确定”,然后选择API,当然你也可以选择其他类型

接下来,就开始我们的代码旅程了:

在"appsettings.json"中配置数据库链接字符串,代码段如下:

{
  "ConnectionStrings": {
    "SQLConnection": "Server=.;Database=CustomerDB;Trusted_Connection=True;"
  },
  "Logging": {
    "LogLevel": {
      "Default": "Warning"
    }
  },
  "AllowedHosts": "*"
}

  创建User对象,代码段如下:

public class User
    {
        public int ID { get; set; }
        public string UserName { get; set; }
        public string Password { get; set; }
    }

  创建DbContext,代码段如下:

public partial class CustomerDBContext : DbContext
    {
        public CustomerDBContext(DbContextOptions<CustomerDBContext> options)
            : base(options)
        {
        }
        public DbSet<User> User { get; set; }
    }

  接下来创建控制器,在这里我选择的是MVC控制器:

    [Route("api/[controller]")]
    [ApiController]
    public class UserController : Controller
    {
        private readonly CustomerDBContext _context;

        public UserController(CustomerDBContext context)
        {
            _context = context;
        }

        // GET: Users
        [HttpGet]
        public ActionResult<string> Index()
        {
            return (_context.User.ToList())[0].UserName;
        }
    }

  当然,还需要在Startup.cs中添加访问配置:

public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext<CustomerDBContext>(options=>options.UseSqlServer(Configuration.GetConnectionString("SQLConnection")));

            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
        }

  启动程序,输入你的控制器地址就行了:

在这个过程中遇见了一点问题,困扰了我挺久的,不过最后解决了

后来找到了原因:

public DbSet<User> User { get; set; }这段代码之前我是这样写的
 public DbSet<User> Users { get; set; },而我数据库中的表名是User
所以一直都无法读取到表!希望以后遇到这样的问题不会再犯
相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
2月前
|
SQL 开发框架 .NET
ASP.NET连接SQL数据库:详细步骤与最佳实践指南ali01n.xinmi1009fan.com
随着Web开发技术的不断进步,ASP.NET已成为一种非常流行的Web应用程序开发框架。在ASP.NET项目中,我们经常需要与数据库进行交互,特别是SQL数据库。本文将详细介绍如何在ASP.NET项目中连接SQL数据库,并提供最佳实践指南以确保开发过程的稳定性和效率。一、准备工作在开始之前,请确保您
286 3
|
2月前
|
存储 NoSQL API
.NET NoSQL 嵌入式数据库 LiteDB 使用教程
.NET NoSQL 嵌入式数据库 LiteDB 使用教程~
|
2月前
|
SQL 开发框架 .NET
ASP.NET连接SQL数据库:实现过程与关键细节解析an3.021-6232.com
随着互联网技术的快速发展,ASP.NET作为一种广泛使用的服务器端开发技术,其与数据库的交互操作成为了应用开发中的重要环节。本文将详细介绍在ASP.NET中如何连接SQL数据库,包括连接的基本概念、实现步骤、关键代码示例以及常见问题的解决方案。由于篇幅限制,本文不能保证达到完整的2000字,但会确保
|
4月前
|
SQL 程序员 数据库
总结查看 .NET EF 生成的 SQL 的 3 种方式,亲测可用
总结查看 .NET EF 生成的 SQL 的 3 种方式,亲测可用
135 0
|
4月前
|
SQL
.Net Core EF 日志打印 SQL 语句
.Net Core EF 日志打印 SQL 语句
106 0
|
5月前
|
SQL 存储 安全
数据库数据恢复—SQL Server数据库出现逻辑错误的数据恢复案例
SQL Server数据库数据恢复环境: 某品牌服务器存储中有两组raid5磁盘阵列。操作系统层面跑着SQL Server数据库,SQL Server数据库存放在D盘分区中。 SQL Server数据库故障: 存放SQL Server数据库的D盘分区容量不足,管理员在E盘中生成了一个.ndf的文件并且将数据库路径指向E盘继续使用。数据库继续运行一段时间后出现故障并报错,连接失效,SqlServer数据库无法附加查询。管理员多次尝试恢复数据库数据但是没有成功。
|
5月前
|
数据库 数据安全/隐私保护
Failed to load resource: the server responded with a status of 404 ()出错的原因是,因为自己调试的时候,设置了与宝塔不一样的数据库
Failed to load resource: the server responded with a status of 404 ()出错的原因是,因为自己调试的时候,设置了与宝塔不一样的数据库
|
5月前
|
关系型数据库 MySQL Go
mysql,数据库Server returns invalid timezone. Go to ‘Advanced‘ tab 数据库的行和列没有出现怎么办p
mysql,数据库Server returns invalid timezone. Go to ‘Advanced‘ tab 数据库的行和列没有出现怎么办p
|
5月前
|
数据库
数据库bug-[08001] Could not create connection to database server. Attempted reconnect 3,主机名ip必须写对
数据库bug-[08001] Could not create connection to database server. Attempted reconnect 3,主机名ip必须写对