Cześć,
Czy ktoś z Was może się orientuje czy istnieje jakiś sprawdzony sposób na generyczne przygotowanie grida w tabeli w module www? Mam na myśli że nie szyjemy aplikacji na miarę typu mamy tabelę lub indexed view z 5cioma kolumnami podpinamy Odata, żeby działało filtrowanie po każdej kolumnie, sortowanie, paginacja, a jak chcemy dodać nową kolumnę to musimy na nowo generować modele i deployować nową wersję aplikacji, tylko chodzi mi o jakiś sposób w którym ktoś dodaje sobie nową kolumnę do View a api i front są w stanie to jakoś automatycznie ogarnąć, jest to możliwe do wykonania?
Generyczne odata, generycznie tworzone tabele w modułach
- Rejestracja: dni
- Ostatnio: dni
- Postów: 68
0
- Rejestracja: dni
- Ostatnio: dni
- Postów: 68
0
A czy w ogóle istnieje możliwość łączenia w OData kilku tabelek w jedno tak żeby działały operacje filtrowania, select, expand itp? Na chwile obecną sobie utworzyłem widok zmaterializowany i próbuję do niego podpiąć odata i zrobic paginacje + filtrowanie, ale na widokach raczej nie zadziała mi expand, bo chyba tam nie da rady podpiąć FK?
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Jastrzębie-Zdrój
- Postów: 2180
0
Nie jestem orłem w OData. Troszkę liznąłem temat, bo myślałem, że to będzie rozwiązanie do mojego problemu, ale niestety nie było. Z tego co wiem to odpowiedź na twoje pytanie brzmi - i tak, i nie...
- NIE - jeśli chcesz mieć generyki i dynamiczny model
- TAK - jeśli skorzystasz z Entity Framework
Jedno wyklucza drugie, ale mogę się mylić. Moim zdaniem $expand nie zadziała na dynamicznym modelu, bo w modelu musisz zadeklarować FK
public class Supplier
{
[Key]
public string Key {get; set; }
public string Name { get; set; }
}
public class Category
{
public int ID { get; set; }
public string Name { get; set; }
public virtual ICollection<Product> Products { get; set; }
}
public class Product
{
public int ID { get; set; }
public string Name { get; set; }
public decimal Price { get; set; }
[ForeignKey("Category")]
public int CategoryId { get; set; }
public Category Category { get; set; }
[ForeignKey("Supplier")]
public string SupplierId { get; set; }
public virtual Supplier Supplier { get; set; }
}