Error CS0051 (Accesibilidad inconsistente: el tipo de parámetro 'Trabajo' es menos accesible que el método 'AddJobs.TotalPay (Trabajo)')

Compilé y ejecuté el código fuente a continuación con éxito al omitir el campo totalFee. ¿Cómo escribo totalFee en este programa para que calcule con precisión la tarifa total para cada trabajo (tarifa * tiempo)? A continuación, verá que intenté usar un método; que generó el error CS0051 (Accesibilidad inconsistente: el tipo de parámetro 'Job' es menos accesible que el método 'AddJobs.TotalPay (Job)').

Este código fuente responde a la siguiente asignación:

"Diseñe una clase de trabajo para los servicios a domicilio de Harold. La clase contiene cuatro campos de datos: descripción del trabajo (por ejemplo," ventanas de lavado "), tiempo en horas para completar el trabajo (por ejemplo, 3.5), tarifa por hora cobrada por Trabajo (por ejemplo, $ 25.00) y tarifa total por el trabajo (tarifa por hora multiplicada por horas).Incluya las propiedades para obtener y establecer cada campo, excepto la tarifa total; ese campo será de solo lectura, y su valor se calcula cada vez que se establece la tarifa por hora o la cantidad de horas. Sobrecargue el operador + para poder agregar dos trabajos. La suma de dos trabajos es un nuevo trabajo que contiene las descripciones de ambos trabajos originales (unidos por "y"), la suma del tiempo en horas para los trabajos originales y el promedio de la tarifa por hora para los trabajos originales. Escriba una función Main () que demuestre que todos los métodos funcionan correctamente. Guarde el archivo como DemoJobs.cs ".

Microsoft® Visual C # ® 2008, Introducción a la programación orientada a objetos, 3e, Joyce Farrell

Aquí está el código fuente:

using System;

public class AddJobs
{
  private double totalFee;

  public AddJobs(double totalFee)
  {
     TotalFee = totalFee;
  }

  public static void Main()
  {
     Job job1 = new Job("washing windows", 5.00, 25.00);
     Job job2 = new Job("walking a dog", 3.00, 11.00);
     Job job3;
     job3 = job1 + job2;

     Console.WriteLine("The first job's description: {0} \nTotal time needed to complete the job: {1} hours \nHourly fee: {2} per hour", job1.Description, job1.Time, job1.Rate.ToString("C"));
     TotalPay(job1);

     Console.WriteLine("The second job's description: {0} \nTotal time needed to complete the job: {1} hours \nHourly fee: {2} per hour", job2.Description, job2.Time, job2.Rate.ToString("C"));
     TotalPay(job2);         

     Console.WriteLine("The third job's description: {0} \nTotal time needed to complete the job: {1} hours \nHourly fee: {2} per hour", job3.Description, job3.Time, job3.Rate.ToString("C"));
     TotalPay(job3);
  }

  public static void TotalPay(Job method)
  {

     double totalFee = Job.rate * Job.time;
     Console.WriteLine("The total fee is: {0}", TotalFee.ToString("C"));
  }
}

class Job
{

  public Job(string description, double time, double rate)
  {
     Description = description;

     Time = time;

     Rate = rate;
  }

  public static Job operator+(Job first, Job second)
  {
     string newDescription = first.Description + " and " + second.Description;

     double newTime = first.Time ,+ second.Time;

     double newRate = (first.Rate + second.Rate) / 2;

     double newTotalFee = newRate * newTime;

     return(new Job(newDescription, newTime, newRate));
  }

  public string Description {get; set;}
  public double Time {get; set;}
  public double Rate {get; set;}
}

Respuestas a la pregunta(4)

Su respuesta a la pregunta