Kuwana kukosha kwepamusoro kubva kurudzi rwekuverenga ibasa rinowanzosangana nevagadziri. Izvi zvinodikanwa mumamiriro ezvinhu apo iwe unofanirwa kusimbisa kupinza kwevashandisi kana kubata zvimwe zviwanikwa zvinoenderana neiyo enum kukosha. C # inopa nzira yakatwasuka yekuita izvi uchishandisa Enum kirasi uye zvishoma zveLINQ.
Ngationgororei mhinduro inoita kuti kudzoreredza kukosha kwehuwandu kuve nyore sepai.
public enum MyEnum
{
Sarudzo1 = 1,
Sarudzo2 = 2,
Sarudzo3 = 3
}
...
public int GetMaxEnumValue()
{
return Enum.GetValues(typeof(MyEnum)).Cast().Max();
}
Ichi chipfupi chidimbu chekodhi chinoita basa rese rekudzoreredza kukosha kwepamusoro muenum. Asi inoshanda sei?
Dive Mukati meCode
The `Enum.GetValues(typeof(MyEnum))` ndicho chidimbu chekutanga chakakosha kunzwisisa. Iyi yakavakirwa-mukati .NET nzira inodzosa Array ine makoshero ezvimisikidzo munhamba yakataurwa. Rudzi rwekuverengera runopfuudzwa separameter kune nzira uchishandisa `typeof` keyword.
Kana tave nehurongwa, tinofanira kukanda kune nhamba huru. Izvi zvinoitwa uchishandisa .Cast() nzira inova chikamu cheLINQ (Mutauro Integrated Query). LINQ igadziriro yemaitiro uye nzira mu.NET inotibvumira kushanda nedata nenzira inonzwisisika uye inoshanduka.
Mushure mekukanda kukosha kune integers, kuwana huwandu hwehuwandu huri nyore sekudana .Max () nzira, chimwe chinhu chikuru chinopihwa neLINQ. Iyi nzira inodzorera kukosha kwepamusoro muunganidzwa we int values.
Leveraging Enum uye LINQ Maraibhurari
The Enum class chikamu cheSystem namespace mu.NET uye inopa nzira dzakati wandei dzekushanda nekuverenga. Ndiyo raibhurari yekuenda paunoda kuita chero mashandiro ane chekuita nemhando dzeenum.
Kune rumwe rutivi, LINQ, chikamu cheSystem.Linq namespace, chimwe chezvinhu zvine simba zveC#. Inopa nzira dzakasiyana-siyana dzekubata kuunganidzwa zvinobudirira, sekuwana iyo yakanyanya, diki, kana avhareji kukosha, kuronga, uye kusefa data.
Read More