Search code examples
c#console-applicationn-tier-architecture

I am getting an error while producing objects


I'm developing a project with N-tier architecture. I got errors while generating a new object in the main function.I can not give the features of car1. The entire text is underlined in red and I get these errors "CS1922: Cannot initialize type 'Car' with a collection initializer because it does not implement 'System.Collections.IEnumerable'" and "CS0747: Invalid initializer member declator".

using Business.Concrete;
using System;
using Entities.Concrete;
using DataAccess.Concrete.EntityFramework;

static void Main(string[] args)
    {
        
        Car car1 = new Car
        {
            car1.Id = 4,
            car1.BrandId = 1,
            car1.ColourId = 2,
            car1.ModelYear = 1990,
            car1.Name = "King",
            car1.DailyPrice = 150,
            car1.Description = "Best"
        };

        CarManager carManager = new CarManager(new EfCarDal());

        Console.ReadLine();
    }

Entities\Concrete\Car.cs

using Core.Entities;
using System;
using System.Collections.Generic;
using System.Text;

namespace Entities.Concrete
{
    public class Car : IEntity
    {
        public int Id { get; set; }
        public int BrandId { get; set; }
        public int ColourId { get; set; }
        public string Name { get; set; }
        public int ModelYear { get; set; }
        public int DailyPrice { get; set; }
        public string Description { get; set; }
    }
}

Solution

  • You don't need the car1. access when initializing within {} like so:

            Car car1 = new Car
            {
                Id = 4,
                BrandId = 1,
                ColourId = 2,
                ModelYear = 1990,
                Name = "King",
                DailyPrice = 150,
                Description = "Best"
            };