Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Sugestão de Solução:

Classe Filme

namespace desafio_alurafilmes.Alura.Filmes;

class Filme
{
    public string title { get; set; }
    public float duration { get; set; }
    public List<Artista> elenco { get; }

    public Filme(string title, float duration)
    {
        this.title = title;
        this.duration = duration;
        this.elenco = new List<Artista>();
    }

    public void addArtist(params Artista[] artists)
    {
        foreach (var artist in artists)
        {
            artist.addFilm(this);
        }
        this.elenco.AddRange(artists);
    }

    public override string ToString()
    {
        string elencoNomes = string.Join(',', this.elenco.Select(artist => $"{artist.name}"));
        return $"title: {this.title}," +
               $"duration: {this.duration}," +
               $"elenco: {elencoNomes}";
    }
}

Classe Artista

namespace desafio_alurafilmes.Alura.Filmes;

class Artista
{
    public string name { get; set; }
    public int age { get; set; }
    public List<Filme> films { get; set; }

    public Artista(string name, int age)
    {
        this.name = name;
        this.age = age;
        this.films = new List<Filme>();
        
    }

    public void addFilm(Filme film)
    {
        films.Add(film);
    }

    public override string ToString()
    {
        return $"name: {this.name}," +
               $"age: {this.age}," +
               $"films: {this.films}";
    }
}

Program.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using desafio_alurafilmes.Alura.Filmes;

var clubeDaLuta = new Filme("Clube da luta", 139);
var drive = new Filme("Drive", 100);

var ryanGosling = new Artista("Ryan Gosling", 43);
var bradPitt = new Artista("Brad Pitt", 60);

clubeDaLuta.addArtist(bradPitt);
drive.addArtist(ryanGosling);



List<Filme> filmes = new List<Filme>();
filmes.Add(clubeDaLuta);
filmes.Add(drive);


foreach (var film in filmes)
{
    Console.WriteLine(film);
}

Console.ReadLine();
//Console.WriteLine(filmes);
1 resposta
solução!

Oi, Bruno! Tudo bem?

Ótimo código! Espero que continue a explorar os conteúdos para ampliar seu conhecimento e desenvolver novas habilidades. Caso tenha restado alguma dúvida em relação a qualquer conteúdo do curso ou atividade, não hesite em perguntar, estou disponível e ficarei super feliz em poder ajudar!

Um forte abraço e bons estudos!