Witam! otóż mam pewien problem z moją metodą... wszystko działa ale nie wiem jak akurat w tym przypadku else mam zwrócić wartość... chodzi mi o to aby zwrócił wszystkie elementy jakie są w słowniku (wartości konkretnych id),
Jednak nie wiem jak to mam zwrócić ... no bo tak, zwrócę w przypadku 1 elementu jeden element i zadziała, ale nie wiem jak zwrócić pełny słownik ze wszystkimi wartościami, czy istnieje jakaś skuteczna metoda pod ten przypadek?
Jeżeli wątek się pojawił gdzieś wcześniej to przepraszam za moje niedopatrzenie.
Jeżeli ktoś rozumie co jest w tym kodzie nie tak to prosiłbym aby mi to wytłumaczył gdzie popełniłem błąd, bądź jakiś link pod ten temat :)
Oto mój kod:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication_3
{
class Program
{
static void Main(string[] args)
{
DataContainer<object> dataContainer = new DataContainer<object>();
dataContainer.AddToTable(4);
dataContainer.AddToTable("tekst");
dataContainer.AddToTable(true);
dataContainer.AddToTable('d');
dataContainer.AddToTable('a');
Console.WriteLine(dataContainer.SelectFromTable());
Console.ReadKey();
}
}
class DataContainer<DataType>
{
private Dictionary<int, DataType> table = new Dictionary<int, DataType>() {
{ 0, default(DataType)}
};
public int GetTableItemsCount
{
get
{
return table.Count - 1;
}
}
public void AddToTable(DataType value)
{
var acctualDbINDEX = table.Count;
table[acctualDbINDEX++] = value;
}
public DataType SelectFromTable(int id = 0)
{
DataType[] dataTypes = new DataType[] {
};
bool handle = false;
if(id != 0)
//Select 1 element by ID
dataTypes[0] = table[id];
else
{
//Select all elements
try
{
//Tutaj sie rowniez generuje blad, nie rozumiem dlaczego tak sie dzieje
//Czyżbym użył złej konstrukcji?
foreach (var item in table.Keys)
{
dataTypes[item] = table[item];
}
}
catch (IndexOutOfRangeException error)
{
Console.WriteLine(error.Message);
}
handle = !handle;
}
if (!handle)
return dataTypes[0];
else
return // Tutaj mam problem jak to zwrocic...
}
}
}