AW: [gentle-devel] Using Views with Gentle
Brought to you by:
mnmr
From: <Gr...@mi...> - 2005-04-14 14:15:23
|
Hello, I've played a little arround, and here are some additional infos: I've changed the AutoGenerated-property in the PrimaryKeyAttribute to = true: no change I did investigate calling the GetKey-function on my Persistent-derrived = class: the method is never called, so no way for me to pass in the = columns i want to use as primary key I've changed the Analyzer/Level to None: Now it works. However, a lot of = other things dont work anymore, because I need the analyzer for foreign = key constraints. I could add the required attributes to each and every = column, but I dont like that idea. I also dont like to make a change = this big, which would definitely lead to the risk of regression. I traced the code, and of course the property FieldMap.IsPrimaryKey for = the column is false, which leads to the generation of a wrong cache-key. I've changed the Cache/DefaultStrategy to Never: this way it works, = however, it wasnt my intention to disable the cache, even if I only = would disable it for this class, it would have a great performance = impact. Regards, Alex =20 > -----Urspr=FCngliche Nachricht----- > Von: gop...@li...=20 > [mailto:gop...@li...] Im Auftrag=20 > von "Alexander Gr=E4f" > Gesendet: Donnerstag, 14. April 2005 15:32 > An: GOPF-DEVEL > Betreff: [gentle-devel] Using Views with Gentle >=20 >=20 > Hello alltogether, >=20 > in order to optimize/speed up my project (MSSQL), I wanted to=20 > move some properties which retrieve a count from a table=20 > directly into the database. So I simply created a view,=20 > defined my INSTEAD OF triggers for UPDATE, INSERT and DELETE=20 > and then changed the persistent class definition to use the=20 > view instead of the underlying table. >=20 > This is quite fine, but there is a serious problem with the=20 > cache: Because the view has no identity column, the cache=20 > retrieves the same object, no matter which value was used: >=20 > Debug: Cache (get) using key: ASI.Database.Category (hit) > Debug: Cache (get) using key: ASI.Database.Category (hit) > Debug: Cache (get) using key: ASI.Database.Category (hit) >=20 > I already defined the ID-column with the PrimaryKeyAttribute,=20 > however, Gentle doesnt seem to use this information for=20 > constructing the list of identity columns. >=20 > How can I get arround this limitation? >=20 > Regards, Alex >=20 >=20 > ------------------------------------------------------- > SF email is sponsored by - The IT Product Guide Read honest &=20 > candid reviews on hundreds of IT Products from real users. > Discover which products truly live up to the hype. Start reading now. > http://ads.osdn.com/?ad_ide95&alloc_id=14396&op=3Dick > _______________________________________________ > Gopf-devel mailing list > Gop...@li... > https://lists.sourceforge.net/lists/listinfo/gopf-devel >=20 |