首页 > 解决方案 > 当我从我的 API 使用 Post 插入数据库时​​出现异常

问题描述

我正在设置一个 Web API,目前只有Person我可以id从 SQL-Server 获取或获取列表。但是当我尝试插入数据库时​​,它会引发异常

System.Data.SqlClient.SqlException:'无效的列名'firstname1'。列名“lastname1”无效。无法绑定多部分标识符“somethinggmail.com”。

这个A类库.Net.Framework和到目前为止我请求信息时没有问题。

我是这方面的新手,所以我没有以前的经验

using DataClassLibrary.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Dapper;
using System.Data;

namespace DataClassLibrary
{
    public static class DataAccess
    {
        public static List<Person> GetPeople()
        {
            using (IDbConnection connection = new System.Data.SqlClient.SqlConnection(Helper.ConnectionVal("FirstDB")))
            {
                return connection.Query<Person>($"SELECT [ID] ,[FirstName] ,[LastName] ,[Email] FROM [FirstDB].[dbo].[Person]").ToList();
            }

        }

        public static void InsertPerson(Person p)
        {
            using (IDbConnection connection = new System.Data.SqlClient.SqlConnection(Helper.ConnectionVal("FirstDB")))
            {
                connection.Query<Person>($"INSERT INTO [FirstDB].[dbo].[Person] (FirstName ,LastName ,Email) VALUES (" + p.FirstName + "," + p.LastName + "," + p.Email + ")");
//connection.Query<Person>($"INSERT INTO [FirstDB].[dbo].[Person] (FirstName ,LastName ,Email) VALUES ( { p.FirstName } , { p.LastName } , { p.Email } )");
            }
        }
    }
}

我想要的结果是将一个人插入我的数据库

标签: c#sql-serversql-insert

解决方案


推荐阅读