簡體   English   中英

Api in.Net Core System.NullReferenceException

[英]Api in .Net Core System.NullReferenceException

我剛開始學習 Api 並開始構建一個簡單的。 我構建了這個 EmployeeController:

using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;

namespace ApiHandsOn1.Controllers
{
    [Route("api/Employee")]
    [ApiController]
    public class EmployeeController : Controller
    {
        List<Employee> _employeeList = new List<Employee>()
            {
                new Employee()
                {
                    Id=1,
                    Name= "abc def",
                    Salary=20000,
                    Permanent= true,
                    //Department= { Id = 1, Name = "Payroll"},
                    Skills ={new Skill{ Id= 1 , Value= "HTML"},new Skill{ Id= 2 , Value="CSS"},new Skill{ Id= 1 , Value= "JS"} },
                    DateOfBirth = new DateTime(01/03/2002)
                },
                new Employee()
                {
                    Id=2,
                    Name= "ghi jkl",
                    Salary=25000,
                    Permanent= false,
                    //Department= { Id = 2, Name = "HR"},
                    Skills ={new Skill{ Id= 1 , Value= "HTML"},new Skill{ Id= 2 , Value="CSS"},new Skill{ Id= 1 , Value= "JS"} },
                    DateOfBirth = new DateTime(15/08/2005)
                }
            };

        public EmployeeController()
        {
            
        }

        private List<Employee> GetStandardEmployeeList()
        {
            
            return _employeeList;
        }
        // GET: EmployeeController
        [HttpGet]
        [Route("GetEmployees")]
        [ProducesResponseType(StatusCodes.Status200OK)]
        public List<Employee> GetStandard()
        {
            List<Employee> empList=GetStandardEmployeeList();
            return empList;
        }

       
    }
}

我已經為各個班級建立了模型。 但是當我在 Swagger 上執行時,它會引發異常(在 _employeeList 處):

System.NullReferenceException:“對象引用未設置為 object 的實例。”

我錯過了什么?

您需要像這樣初始化Skills屬性:

Skills = new List<Skill>(){new Skill{}, new Skill{}}

正如@smoksnes 提到的,你應該把你的值放在DateTime時間初始化中的文字之間

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM