Kezdőoldal » Számítástechnika » Programozás » Stringből felsorolástípusba...

Stringből felsorolástípusba konvertálás Enum. TryParse-val?

Figyelt kérdés

Az alábbi hibakódot kapom:

the type string must be non nullable value type to use it as parameter 'TEnum'


public enum Faj { kutya, panda, nyul };


lista[jelenlegi].Fajta = Enum.TryParse("Faj",out adat[3]); //itt jelzi a hibát


Kicsit alább beilesztem a teljes kódot.



using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace ConsoleApp7

{

public enum Faj { kutya, panda, nyul };


class Allat

{

public Faj Fajta { get; set; }

public string Nev { get; set; }

public bool Nem { get; set; }

public int Suly { get; set; }

}

class Ketrec

{

int meret,jelenlegi=0;

Allat[] lista=new Allat[10];

public Ketrec(int meret)

{

this.meret = meret;

}

public void Felvetel(string adatok)

{

if (jelenlegi<meret)

{

string[] adat = adatok.Split(' ');

jelenlegi++;

lista[jelenlegi].Nev = adat[0];

lista[jelenlegi].Nem = Convert.ToBoolean(adat[1]);

lista[jelenlegi].Suly = int.Parse(adat[2]);

lista[jelenlegi].Fajta = Enum.TryParse("Faj",out adat[3]);

}

}

public void Torol(string nev)

{

int i = 0;

while ((i<meret)&&(nev!=lista[i].Nev))

{

i++;

}

if (i<=meret)

{


while (i < meret-1)

{

lista[i].Nev = lista[i+1].Nev;

lista[i].Nem = lista[i+1].Nem;

lista[i].Suly = lista[i+1].Suly;

lista[i].Fajta = lista[i + 1].Fajta;

}

lista[meret].Nev = "";

lista[meret].Nem = false;

lista[meret].Suly = 0;

lista[meret].Fajta = 0;

meret--;

jelenlegi--;


}

}

}

class Program

{

static void Main(string[] args)

{

}

}

}



2018. febr. 13. 17:21
 1/7 anonim ***** válasza:

Stringbe akarsz egy enumot tenni.

Nem fog menni.

2018. febr. 13. 18:53
Hasznos számodra ez a válasz?
 2/7 anonim ***** válasza:

vagy

lista[jelenlegi].Fajta = Enum.Parse(typeof(Faj), adat[3]);


vagy

Enum.TryParse(adat[3], out lista[jelenlegi].Fajta);

2018. febr. 13. 22:25
Hasznos számodra ez a válasz?
 3/7 A kérdező kommentje:
Egyik sem működött sajnos, de azért köszönöm a válaszokat, megoldom switchel.
2018. febr. 14. 08:22
 4/7 anonim ***** válasza:
Egyszerűbb, mint utánanézni hogyan is kéne hasznélni, mi?
2018. febr. 14. 08:25
Hasznos számodra ez a válasz?
 5/7 A kérdező kommentje:
Yepp
2018. febr. 14. 11:19
 6/7 anonim ***** válasza:
42%
Gyökér.
2018. febr. 14. 12:17
Hasznos számodra ez a válasz?
 7/7 anonim ***** válasza:
:D :D :D
2019. ápr. 29. 18:58
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!