OA RIA questions

Thread is closed for posting
5 posts, 0 answers
  1. Alex
    Alex avatar
    141 posts
    Member since:
    Mar 2010

    Posted 21 Jun 2010 Link to this post

    Hi everyone,

    I have a few questions/requests with regards to RIA.
    (I'm evaluating different ORM's at the moment and the other guys are pushing for us to sign up but I would like to take a look/hear what OA has to say). (I don't know if this is the correct forum/thread to put this in either but any way) (Also my OA does not work very well at the moment so I can't test these things my self)


    Questions about OA and RIA:
    1. Will the client side Classes be modifiable? Or will they be in protect sealed classes? (OA has nice modifiable classes, but RIA has sealed internal classes, so I don't know how the two will end up) e.g. Are the entity classes partial-able or inheritable? (On the client side preferably)
    e.g. If I wanted to have a new property that is the sum of two other properties.


    Questions about OA vs ADO EF
    2. Meta data generation.
    Does OA plan to include a more useful code generator for the meta data?
    My gripes with the EF are:
    -[Include] attributes are not auto included. (Will OA include Include's where nececary? As you should already know if tables should be include from the reverse mapping) (I actually downloaded a tool to just stick include on everything to make my development time easier)


    Questions about OA vs DevForce vs ADO
    3a. DevForce generates it's entities with string max length limits (e.g. in nvarchar(50) its max length is 50). ADO does not. Will OA generate these limits? (For validation)
    3b. DevForce generates an entityname In each entity class, which has constant strings with the entity names. (So you can use intellisense, instead of just "strings")


    Question about OA
    4. Generated Values on non generated columns
    Can OA accept null values on non-nullable columns? (They get un-nulled by an instead of insert trigger)
    (Or will I just have to keep passing junk values into my Insert's/Create's)


    I need to have composite sequential ID's e.g.
    1,1
    1,2
    1,3
    2,1
    2,2
    2,3 etc.
    (Legal requirement for invoice numbers.. apparently)

    So I have my main data tables using GUID's, and a related table with an Instead of insert trigger, to generate the conditionally sequential ID's
    This table to generate the sequential ID's is as follows
    ParentId (GUID, PK, is the FK in a relation to the parent table, not nullable)
    FirstNumber (Int or similar, not nullable)
    SecondNumber (int or similar, not nullable)

    My instead of insert trigger essentially turns an Insert(GUID, FirstNumber, <anything>) into the next sequential ID
    Meaning that I will always be passing null as the second number
  2. Mika Jacobi
    Mika Jacobi avatar
    10 posts
    Member since:
    Aug 2009

    Posted 21 Jun 2010 Link to this post

    Hi Alexander,

    I guess you will soon get a comprehensive answer from the Telerik Support
    In the meanwhile, you could have a look at this topic concerning RIA Services support in OA.
    http://www.telerik.com/community/forums/orm/getting-started/how-to-use-oa-with-ria.aspx
    As of March 2010, I guess this was still work in progress.

    Few elements of answer :

    1 - Yes, definitely, classes are partial from the start, and fully inheritable.
    OA Separates generated code from your custom core classes (accessors and other stuff) by using partialable classes (optional, but very handy).This is a very clean and clean feature that is customizable.

    2 - No idea, to be honest, but I guess it's feasible.

    3 - Not to my knowledge. You have to handle this in the code with eventHandlers, i guess (I may be wring on this one).

    4 - Nullable types are put by default on nullable columns.(i.e appending a question mark sign to .net types to make them nullable).
    If your column is non-nullable you can "fake it" in the mapping. I had the same issue and it can be managed by editing and "patching" the mapping files to force nullability, since it is all a question of mapping after all, if you Database intercepts smoothly such queries with no sql exceptions (via a trigger, like you said, for instance)

    All in all Telerik's OA is an excellent product and I generally strongly advise it.
    However, you should think twice since you seem to have a very specific need.

    Hope this helped.

    MJ
  3. PetarP
    Admin
    PetarP avatar
    754 posts

    Posted 25 Jun 2010 Link to this post

    Hello,

    Mika, thanks for providing so clear and correct answer for most of the questions. Let me share some light on the ones that are still not so clear.
    We plan to implement as complete meta generation as possible. This includes the generation of the [Include] attributes. With our last service pack we have released the first version of our wizard that will aid our users during the creation of RIA data services using OpenAccess. With our future releases we plan to build on this wizard and develop it much further to suit our users needs.
    Regarding the string max length limit - this is the first time we have such request and that is why we have not considered it yet. However should we see interest in that feature we will most certainly rise its priority.

    Greetings,
    Petar
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  4. Alex
    Alex avatar
    141 posts
    Member since:
    Mar 2010

    Posted 27 Jun 2010 Link to this post

    I think that the string length should be a fairly standard feature as it helps with validation
    e.g. If I have a db with nvarchar(50), ideally, the meta data should know the max string length is 50
    (This is not done in ADO/RIA but it is done with Dev Force)
  5. PetarP
    Admin
    PetarP avatar
    754 posts

    Posted 01 Jul 2010 Link to this post

    Hello Alexander Sun,

    We will consider such a feature for sure. However given the fact that we are several weeks away from the Q2 release I am afraid that its too late to plan such features for this release. Nevertheless we will consider the request for future implementations.

    Sincerely yours,
    Petar
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
Back to Top