Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

C# Entity Framework Basics Extending Our Entity Data Model Defining and Using a One-to-Many Relationship

the question is wrong

using System.Collections.Generic;

namespace Treehouse.CodeChallenges
{
    public class Course
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public string Description { get; set; }
        public int Length { get; set; }

        public int TeacherId{get;set;}

        public Teacher Teacher{get;set;}
    }

     public class Teacher
    {
        public Teacher() //3rd objective???
        {
            Courses = new List<Course>();
        }

        public ICollection<Course> Courses { get; set; } // 2nd objective
    }
}

There seems to be no error bu it doesnt accept my answer.

Course.cs
using System.Collections.Generic;

namespace Treehouse.CodeChallenges
{
    public class Course
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public string Description { get; set; }
        public int Length { get; set; }

        public int TeacherId{get;set;}

        public Teacher Teacher{get;set;}
    }

     public class Teacher
    {
        public Teacher() //3rd objective???
        {
            Courses = new List<Course>();
        }

        public ICollection<Course> Courses { get; set; } // 2nd objective
    }
}
Teacher.cs
namespace Treehouse.CodeChallenges
{
    public class Teacher
    {
        public int Id { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
    }
}

2 Answers

Justin Horner
STAFF
Justin Horner
Treehouse Guest Teacher

Hello Irem,

On the last objective you'll need to keep what the Teacher class already has defined and simply add the courses property and constructor. From the code you've provided, it looks like you've removed the initial properties it had defined. Please let me know if I'm misunderstanding the code you added.

Here's what it would it should be combined with your changes.

Teacher.cs
using System.Collections.Generic;

namespace Treehouse.CodeChallenges
{
    public class Teacher
    {
        public Teacher()
        {
            Courses = new List<Course>();
        }

        public int Id { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }

        public ICollection<Course> Courses { get; set; }
    }
}

I hope this helps.

James Churchill
STAFF
James Churchill
Treehouse Teacher

Irem,

As Justin mentioned, by adding another definition for the Teacher class, you've defined the Teacher class twice which results in a compilation error. To see the compilation error details, you need to click on the "Preview" button.

Teacher.cs(3,18): error CS0101: The namespace `Treehouse.CodeChallenges' already contains a definition for `Teacher'
Course.cs(17,19): (Location of the symbol related to previous error)
Compilation failed: 1 error(s), 0 warnings

Thanks ~James