Diskuze: Core 2.1 virtual properties - vlastní list
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 13 zpráv z 13.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Jde ti o to, abys nemel seznam pohlavi nacitan z databaze? Muzes pro to pouzit enum...
1.) 3.0 není ještě hotový. Je stále preview 2. Tudíž přecházet zatím nikam nebudu.
Můžu ten list použít nějak v tom public virtual List<Gender> ..??
díky. Na to jsem taky přišel, jenže to má dost problémů. A jednou z věcí je to, jak mi to vrací JSON na API, jelikož používám React JS. Podařilo se mi nakonec to vrátit s hodnotou i s tím názvem, jenže chodí to v jiné struktuře a přepisovat React nechci.
Myslel jsem, že tyto změny provedu jen na backendu a zvenčí to bude vypadat stejně...
no udělej si jednoduše class a v něm výčtový typ podle libosti, asi nejlepší je něco ve smyslu "pole" aby se ti k tomu dobře přistupovalo a aby to mělo i indexer. těch 50 pohlaví budeš muset asi nějak pojmenovat to já nevim jak to je na tobě koukni sem
https://stackoverflow.com/…n-of-an-enum
https://docs.microsoft.com/…ration-types
aktuálně mám v databázi např.
Id: 1, Name: "Muž"
takže server mi vráti pole objektů tedy
[
{
id: 1,
name: Muž
}
]
takto to potřebuji vracet.
Jakmile to dám do toho enum, tak jak mi to může vrátit "Muž", když se to bude jmenovat MAN, jelikož je to v kódu a tam to píšu prostě anglicky, ani jinak by to nešlo, když je tam háček.
Takže to je takový hlavní problém. Dělám českou aplikaci.
my ti rozumíme, to že to píšeš anglicky je dobře,ale pohlaví se píše
Gender ne ?
a když si uděláš indexer tak to bude vypadat jako List<něco> pohlaví
a pak se na to ptáš jako
gender["Adam Gajdečka"] a ono ti to vrátí "male" ve formě json což je jen
způsob formátování textu ....
A co treba pouzit neco jako Dictionary<Enums.Gender, string>() ci podobnou variaci?
Je zbytecne to mit v db. Pripadne pis dalsi problemy
Tak nakonec jsem to vyřešil jednoduše.
public class ReadOnlyRepository : IReadOnlyRepository
{
private readonly ApplicationDbContext _context;
public ReadOnlyRepository(ApplicationDbContext context) => _context = context;
public List<Gender> GetGenders()
{
List<Gender> genders = new List<Gender>();
genders.Add(new Gender { Id = 0, Name = "Muž" });
genders.Add(new Gender { Id = 1, Name = "Žena " });
return genders;
}
}
}
S těch navigation property jsem to virtual Gender musel smazat. Vrací mi to jen to Id a případně jméno dohledám. Nakonec mi to vůbec nevadí, jelikož kompletuje se to vše až u klienta v JS.
Zobrazeno 13 zpráv z 13.