Who could imagine?

10 Responses

  1. Nick says:

    Well done you!

  2. Margott Terblanche says:

    Wow! Well done, John!

  3. Mohammed Nasman says:

    Well done, keep this great work,
    Today I bought the ORM book today from amazon with other 2 books, I forgot about the MVVM one, I will try to add it on my next order.

    • John Kouraklis says:

      Thanks a lot.
      I hope you enjoy the book. Please let me know what you think of it.

  4. Gerrard says:

    Dear Ioannis,

    Hope you are well.
    Congratulations from my wife and I on your publications.
    How can we obtain copies of your works?

    • John Kouraklis says:

      Many thanks to you and your wife.
      You can get them from Amazon or from Apress’ web site.
      I have added a link in the post.
      Thanks again

  5. Trevor says:

    Hello John

    I’ve just finished the ORM Book. Very good, I’d recommend it to anyone learning Aurelius- I’ll put a review on the UK Amazon site

    Couple of points:

    I noticed that that all of the project source had this duplicate line

    Application.CreateForm(TSQLiteConnection, SQLiteConnection);
    Application.CreateForm(TSQLiteConnection, SQLiteConnection);

    Is that intentional? I don’t recall seeing an explanation it it is.

    Also, when considering Aurelius classes, Join Column maps to the foreign key concept in the database. Does the Many Valued Association have a corresponding concept is the database, or is it purely something on the ORM side? For instance if I create tables from the classes, I don’t notice anything in the physical database relating to the MVA.

    Thanks again for the book and helping me get to grips with Aurelius


    • John Kouraklis says:

      Hi Trevor,
      Thanks for the kind words; and, definitely, thank you for pointing out to me the duplicate lines. I never noticed them and, frankly, I would expect to get a compiler error (or warning at least). I have cleaned up the code on github now.

      Regarding your query about ManyValuedAssociation, it implements the concept of one-to-many association. JoinColumn does the same for the opposite direction (many-to-one). Therefore, the database concept they both implement is the foreign keys and they behave as Join tables.

      Why do we need both? Because Aurelius does not scan the foreign keys in the database. Instead, we need to pass all the database structure in code.

      For instance if I create tables from the classes, I don’t notice anything in the physical database relating to the MVA.

      Look for the foreign keys. Aurelius does create them

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.