Forum Użytkownikow Subiekt GT

InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: Musashi w Październik 06, 2015, 23:28:52

Tytuł: Sfera - badanie wersji obiektu; Jak sprawdzić czy obiekt został zmieniony?
Wiadomość wysłana przez: Musashi w Październik 06, 2015, 23:28:52
Witam,

Czy ktoś orientuje się czy za pomocą sfery istnieje możliwość pobrania jakiegoś hashcodu lub ostatniej daty modyfikacji obiektu?
Mam napisany webservice w C# który za pomocą sfery wyciąg interesują mnie dane z bazy i wrzuca do innej. Chciałbym w jakiś sposób przyspieszyć synchronizacje danych. Do tej pory próbowałem ze standardowym GetHashCode z C# i wszystko pięknie działa tyle tylko, że w obrębie jednej sesji, przy kolejnym wywołaniu metody hash się zmienia, mimo, że obiekt się nie zmienił. Próbowałem również nadpisywać metodę hashcoda dla obiektu poprzez wyciąganie hasha za pomocą MD5 czy SH1 tyle tylko, że wszystkie one serializują najpierw obiekty, czego nie można zrobić z obiektami COMa... Miał ktoś kiedyś podobny problem?
Tytuł: Odp: Sfera - badanie wersji obiektu; Jak sprawdzić czy obiekt został zmieniony?
Wiadomość wysłana przez: Musashi w Październik 16, 2015, 14:45:30
Witam,

Widzę, że sam sobie muszę odpowiedzieć:) Na podstawie mojej aktualnej wiedzy sfera nie udostępnia, żadnego mechanizmu/znacznika do badania wersji obiektu. Konieczne jest albo samemu grzebanie na bazie i tworzenie triggerow reagujących na updaty, inserty co jest moim zdaniem słabym rozwiązaniem... albo nadpisanie swojeje metody hashcodu dla kazdego z obiektów i wyliczania go z własności obiektu jakich używamy, wiąże się to oczywiście każdorazowym przeliczeniem całych kolekcji danych, co niestety jest bardzo zasobo-żerne.

Szkoda, że twórcy api nie wpadli na pomysł wstawienia jednego pola więcej, np data ostatniej modyfikacji. Dałobyto ogromne możliwości sychronizacji pomiędzy cała masą sklepów internetowych i tego typu rozwiązań.

Cheers!