Ej statisk metod

Tidigare övning/ar har jag använt mig av publika statiska metoder hela tiden.
Den senaste övningen var även den publik och statisk.
Nu har jag fixat till den så att den inte är statisk längre alls.

Fixat på följande sätt:

Program.cs

Console.Write("Ange 2-4 värden som är kommaseparerade (ex. 3,8,2,1): ");
string input = Convert.ToString(Console.ReadLine());
Console.WriteLine("Det värde du matade in är: \n");
Console.Write(input + "\n\n");
Console.Write("Vänligen vänta så anropar vi rätt metod........\n");

// Skapar ett nytt objekt funktions som länkningen till Functions finns i om man vill göra den mer dynamisk.
// Nu är resterande av "FredrikBLL.BLL.Functions.myValues" private så dessa kommer jag inte åt
// förrutom att det går nu via myValuesMain beroende på inmatade värden.
FredrikBLL.BLL.Functions functions = new FredrikBLL.BLL.Functions();
string output = functions.myValuesMain(input);
// string output = FredrikBLL.BLL.Functions.myValuesMain(input);   // Tidigare...

Console.WriteLine("Resultatet:\n" + Convert.ToString(output));
Console.ReadLine();


Functions.cs

/// <summary>
/// HuvudMetonden som kommer att anropa under metoder beroende på antalet angivna värden med kommaseparationer.
/// </summary>
/// <param name="value1">Parameter 1 / Tal 1</param>
/// <param name="value2">Parameter 2 / Tal 2</param>
/// <param name="value3">Parameter 3 / Tal 3</param>
/// <param name="value4">Parameter 4 / tal 4</param>
/// <returns>Returnerar vilken metod som returnerar ett svar.</returns>
public string myValuesMain(string input)
{
string output = "";
string[] inArray = input.Split(new char[] { ',' });

if (inArray.Length == 2)
{

string returnvalue = myValues(Convert.ToInt32(inArray[0]), Convert.ToInt32(inArray[1]));
return returnvalue;
}

else if (inArray.Length == 3)
{
string returnvalue = myValues(Convert.ToInt32(inArray[0]), Convert.ToInt32(inArray[1]), Convert.ToInt32(inArray[2]));
return returnvalue;
}

else if (inArray.Length == 4)
{
string returnvalue = myValues(Convert.ToInt32(inArray[0]), Convert.ToInt32(inArray[1]), Convert.ToInt32(inArray[2]), Convert.ToInt32(inArray[3]));
return returnvalue;
}
else
{
return output = "Hittade inget passande";
}
}

/// <summary>
/// Denna metod används av myValueMain som frågar vilken av metoderna myValues som
/// kan ta emot bara 2 parameters vilket denna gör.
/// </summary>
/// <param name="value1">parameter 1</param>
/// <param name="value2">parameter 2</param>
/// <returns>Returnerar vilken metid som användes och summan av värde 1 och 2</returns>
private string myValues(int value1, int value2)
{
int returnvalue = Convert.ToInt32(value1 + value2);
return Convert.ToString("Metod med 2 värden anropades.\nSumman av " + value1 + "+" + value2 + "=" + returnvalue);
}

/// <summary>
/// Denna metod används av myValueMain som frågar vilken av metoderna myValues som
/// kan ta emot bara 3 parameters vilket denna gör.
/// </summary>
/// <param name="value1">parameter 1</param>
/// <param name="value2">parameter 2</param>
/// <param name="value3">parameter 3</param>
/// <returns>Returnerar vilken metid som användes och summan av värde 1, 2 och 3</returns>
private string myValues(int value1, int value2, int value3)
{
int returnvalue = Convert.ToInt32(value1 + value2 + value3);
return Convert.ToString("Metod med 3 värden anropades.\nSumman av " + value1 + "+" + value2 + "+" + value3 + "=" + returnvalue);
}

/// <summary>
/// Denna metod används av myValueMain som frågar vilken av metoderna myValues som
/// kan ta emot bara 4 parameters vilket denna gör.
/// </summary>
/// <param name="value1">parameter 1</param>
/// <param name="value2">parameter 2</param>
/// <param name="value3">parameter 3</param>
/// <param name="value4">parameter 4</param>
/// <returns>Returnerar vilken metid som användes och summan av värde 1, 2, 3 och 4</returns>
private string myValues(int value1, int value2, int value3, int value4)
{
int returnvalue = Convert.ToInt32(value1 + value2 + value3 + value4);
return Convert.ToString("Metod med 4 värden anropades.\nSumman av " + value1 + "+" + value2 + "+" + value3 + "+" + value4 + "=" + returnvalue);
}

Kommentarer

Kommentera inlägget här:

Namn:
Kom ihåg mig?

E-postadress: (publiceras ej)

URL/Bloggadress:

Kommentar:

Trackback
RSS 2.0