Mam trudności ze zrozumieniem, jak przekonwertować wartość wyliczenia na odpowiadającą jej nazwę. Mój model jest następujący:Uzyskiwanie wyliczeń do wyświetlania po stronie klienta
public class CatalogRule
{
public int ID { get; set; }
[Display(Name = "Catalog"), Required]
public int CatalogID { get; set; }
[Display(Name = "Item Rule"), Required]
public ItemType ItemRule { get; set; }
public string Items { get; set; }
[Display(Name = "Price Rule"), Required]
public PriceType PriceRule { get; set; }
[Display(Name = "Value"), Column(TypeName = "MONEY")]
public decimal PriceValue { get; set; }
[Display(Name = "Exclusive?")]
public bool Exclude { get; set; }
}
public enum ItemType
{
Catalog,
Category,
Group,
Item
}
public enum PriceType
{
Catalog,
Price_A,
Price_B,
Price_C
}
Wynik próbki z .net API:
[
{
$id: "1",
$type: "XYZ.CMgr.Models.CatalogRule, XYZ.CMgr",
ID: 1,
CatalogID: 501981,
ItemRule: 0,
Items: "198",
PriceRule: 1,
PriceValue: 0.5,
Exclude: false
},
{
$id: "2",
$type: "XYZ.CMgr.Models.CatalogRule, XYZ.CMgr",
ID: 2,
CatalogID: 501981,
ItemRule: 2,
Items: "9899",
PriceRule: 2,
PriceValue: 10.45,
Exclude: false
}
]
więc w tym przykładzie, muszę dostać Katalog na wyniki [0] .ItemRule & cena A dla wyników [0] .PriceRule. Jak mogę to osiągnąć w BreezeJS?
Podczas badania tego problemu odkryłem, że chociaż metadane Enum były obecne w wywołaniu API '/ Metadata', zostały odrzucone po stronie klienta przez Breeze. Dzięki za aktualizację Jay. –
Breeze v 1.2.1 został właśnie wydany, a wyliczenia są teraz przetwarzane jako łańcuchy znaków i tak samo zmaterializowane. –
Nawiasem mówiąc, zaktualizowałem też kilka minut temu ...;) Ta wersja rozwiązuje problem, Thanx ... –