Avatar of Misha
Misha
Flag for Russian Federation

asked on 

C# SOLID and best practices

Hello!
I need advice for SOLID principles and programming best practices.

I have two classes inherited from one main class. Objects of this classes are in List. I need beautifull solution to print information about this classes

Class Entity
class Entity
{
       
}

Open in new window


Class Person
sealed class Person : Entity
{
       internal FirstName {get; set;}
       internal LastName {get; set;}

       public override string ToString()
        {
            return $"FirstName ={FirstName } LastName  = {LastName } ";
        }
 }

Open in new window


Class Car
sealed class Car: Entity
{
       internal Name {get; set;}
       internal MaxSpeed {get; set;}

       public override string ToString()
        {
            return $"Name ={Name } MaxSpeed = {MaxSpeed } ";
        }
}

Open in new window


Class Writer
sealed class Writer
{
    internal void Write()
    {
        List<Entity> entities= new List<Entity>();
       // add some persons..
      // add some cars...
       StreamWriter writer = new StreamWriter("qwe.txt");
       foreach (Entity e in entities)
       {
            writer.WriteLine(e.ToString());
       }
    }
}

Open in new window


In real case there is complex logic in method  ToString. And some other objects are using in method ToString()
Programming.NET Programming* Best PracticeC#

Avatar of undefined
Last Comment
Misha

8/22/2022 - Mon