Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc
David, I've spent a lot of time on that very topic and have come to the conclusion that for many applications I really don't want to use a complex ORM middle tier. Sometimes the absolute best thing to do is to pass requests from the UI, back into BASIC as soon as possible, foregoing client and middle-tier validation, and even sacrificing the warm and fuzzy convenience of strongly typed classes binding to UI components. The thing is that in today's world we try to be "PC" and separate tiers as much as possible. But an ORM puts datasource-aware components into the UI, or close to it, and personally I feel like I'm breaking conventions of isolation by mixing the tiers. So in one of my code generators I generated dumb POCOs (Plain Ol' Class Objects) to help with the UI, and then used various patterns to attach them to separate data access components, whether UO, QMClient, MVSP, etc. Again the idea here is to keep this middle-tier as simple as possible, and as you suggest, keep all of the power in the MV tier and BASIC. Some of my clients also prefer this because it gives their BASIC/non-.NET people more control. About stored procs: In mv.NET, and I'd guess in the FusionWare offering as well, the "stored procedure" method invocation (.Execute, etc) on a strongly typed object does map to a BASIC program, so you get your wish there. I will be happy to provide a small sample of code for that here or elsewhere if you wish. Regards, T > From:David Jordan > What I would like to see is that U2 builds stronger > interface between UniBasic Subroutines and > DataSets/entity frameworks. The current methodology is > to create a 3 tier environment with a database server, > an application server and a client server where U2 is > just a simple data server. If you use U2 as the data > server and the application server, you have greater > ability to take advantage of the performance benefits > of multivalue databases and you simplify the > transaction process and disaster recovery. ORMs work > with stored procedures, so why not subroutines. ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc
What I would like to see is that U2 builds stronger interface between UniBasic Subroutines and DataSets/entity frameworks. The current methodology is to create a 3 tier environment with a database server, an application server and a client server where U2 is just a simple data server. If you use U2 as the data server and the application server, you have greater ability to take advantage of the performance benefits of multivalue databases and you simplify the transaction process and disaster recovery. ORMs work with stored procedures, so why not subroutines. Regards David Jordan ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc
Hi Tony, Within ADO.NET there is a concept called a Strongly Typed DataSet, which, if your Managed Provider supports the correct interfaces, Microsoft will auto-generate for you from a regular DataSet (which as you note is not strongly typed). The resulting Strongly Typed DataSet is a strongly typed business object, which will reject passing a String to a Date type, for instance, and will reject it at compile-time, not run-time. Wrap it with a simple DAL and you get a very powerful business object that can support a wide variety of clients. The DAL allows you to customize your accessors and expose data directly or through SOAP or RESTful Web Services. In order to support Silverlight, which does not support the System.Data assembly due to browser sandbox restrictions, we auto-generate classes for Silverlight, which can be used in other places, too, but we have found that the Strongly Typed DataSet and DAL are a very powerful combination, and where useable are more than adequate. -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony Gravagno Sent: December-21-11 7:43 PM To: u2-users@listserver.u2ug.org Subject: Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc Robert, sincere apologies, and thanks for the correction. To avoid misunderstandings, there is a huge difference between a DataSet and a strongly typed business object. They are sometimes used alternatively but there are times when one or the other is absolutely required. If ORM was as simple as returning a dataset we wouldn't have a need for ORM frameworks like NHibernate, CSLA, or commercial offerings like the Telerik OpenAccess ORM. Here is one excellent Q&A on the topic: http://stackoverflow.com/questions/657327/is-dataset-an-orm [Another obligatory AD tag here I guess] The word "proprietary" may prompt some discussion: Every framework does what it does in a unique fashion, that's what differentiates it from others. In this regard, all commercial and FOSS frameworks are "proprietary". But I did mention that the source which mv.NET generates is completely open, as are the templates that it uses. The generated classes are all "partial" which means you can modify the generated code. But preferred and better, partial stub classes are also generated which allow developers to hook into functionality at many key points. Generate the base classes as many times as you want and never lose your mods. In the context of the request for an ORM, people actually do want to generate DLLs which are proprietary to their own application. There's nothing wrong with that, that's the goal, and that's exactly what mv.NET helps VARs to generate. I position this as a feature. In addition to Solution Objects and the code generator component, mv.NET also includes the Adapter Objects library which renders collections of items as a strongly-typed DataSet, with Tables, Rows, Columns, etc. UO.NET has similar functionality. All this, yes, and much much more, are included in the same reasonably priced offering. Now, mv.NET does Not have any functionality related to Java. If you need to deploy over *nix or you're creating JARs for existing Java clients, then I highly recommend investigation of FusionWare's offerings as a valuable superset of UOJ. As an independent developer, my position in this game of tool sales is different from others. I sell specific software packages because I like them - I don't like them because I sell them. I won't sell software or services to a company if I know there's a better solution for a specific need. So I recommend that anyone interested in connectivity above and beyond UO should look at all of the options. If it turns out that someone likes the same tools I like, great, the commission earns me a cup of coffee for my time. If not, I hope to benefit by learning why people made other choices. It's all about solutions, not tools - or should be anyway. T > From: Robert Houben > > [AD] > Actually, there is another alternative. FusionWare's Managed Provider > allows you to create a strongly typed dataset, and you can use this to > create a Data Access Layer. The strongly typed dataset is actually a > Microsoft DataSet object, not a proprietary object of any sort. To > see more, view any of the "Nothin' but .NET" series at > http://www.youtube.com/fusionwareint > > We also provide similar functionality for Java environments through > our Java Data Adapter. > [/AD] ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc
Robert, sincere apologies, and thanks for the correction. To avoid misunderstandings, there is a huge difference between a DataSet and a strongly typed business object. They are sometimes used alternatively but there are times when one or the other is absolutely required. If ORM was as simple as returning a dataset we wouldn't have a need for ORM frameworks like NHibernate, CSLA, or commercial offerings like the Telerik OpenAccess ORM. Here is one excellent Q&A on the topic: http://stackoverflow.com/questions/657327/is-dataset-an-orm [Another obligatory AD tag here I guess] The word "proprietary" may prompt some discussion: Every framework does what it does in a unique fashion, that's what differentiates it from others. In this regard, all commercial and FOSS frameworks are "proprietary". But I did mention that the source which mv.NET generates is completely open, as are the templates that it uses. The generated classes are all "partial" which means you can modify the generated code. But preferred and better, partial stub classes are also generated which allow developers to hook into functionality at many key points. Generate the base classes as many times as you want and never lose your mods. In the context of the request for an ORM, people actually do want to generate DLLs which are proprietary to their own application. There's nothing wrong with that, that's the goal, and that's exactly what mv.NET helps VARs to generate. I position this as a feature. In addition to Solution Objects and the code generator component, mv.NET also includes the Adapter Objects library which renders collections of items as a strongly-typed DataSet, with Tables, Rows, Columns, etc. UO.NET has similar functionality. All this, yes, and much much more, are included in the same reasonably priced offering. Now, mv.NET does Not have any functionality related to Java. If you need to deploy over *nix or you're creating JARs for existing Java clients, then I highly recommend investigation of FusionWare's offerings as a valuable superset of UOJ. As an independent developer, my position in this game of tool sales is different from others. I sell specific software packages because I like them - I don't like them because I sell them. I won't sell software or services to a company if I know there's a better solution for a specific need. So I recommend that anyone interested in connectivity above and beyond UO should look at all of the options. If it turns out that someone likes the same tools I like, great, the commission earns me a cup of coffee for my time. If not, I hope to benefit by learning why people made other choices. It's all about solutions, not tools - or should be anyway. T > From: Robert Houben > > [AD] > Actually, there is another alternative. FusionWare's > Managed Provider allows you to create a strongly typed > dataset, and you can use this to create a Data Access > Layer. The strongly typed dataset is actually a > Microsoft DataSet object, not a proprietary object of > any sort. To see more, view any of the "Nothin' but > .NET" series at http://www.youtube.com/fusionwareint > > We also provide similar functionality for Java > environments through our Java Data Adapter. > [/AD] ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc
[AD] Actually, there is another alternative. FusionWare's Managed Provider allows you to create a strongly typed dataset, and you can use this to create a Data Access Layer. The strongly typed dataset is actually a Microsoft DataSet object, not a proprietary object of any sort. To see more, view any of the "Nothin' but .NET" series at http://www.youtube.com/fusionwareint We also provide similar functionality for Java environments through our Java Data Adapter. [/AD] -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Tony Gravagno Sent: December-21-11 1:31 PM To: u2-users@listserver.u2ug.org Subject: [U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc >From : Adrian Halid > Has anybody tried or found an ORM for Universe. > > I am looking at something along the lines of NHibernate or Entity > Framework. [AD] Yes, and to my knowledge there is only one. mv.NET includes a component called Solution Objects. You start with your standard dictionary defs. You add details required for strongly typed properties to create Extended definitions. You then define business objects which aggregate files and BASIC rules, and define strongly typed collections and relationships amongst the various classes. Then you generate C# or VB.NET code which you then compile into a DLL. The new modules are as capable as those of NHibernate or EF for validating data, supporting read-only properties, managing cascading updates, etc. You have all of the source and can walk through and change the functionality if required. The code is generated off of templates (like CodeSmith) which you can change to effect global changes to your apps. Direct file read/write is managed for you, or you can choose to have I/O go through your BASIC code (which is more in-line with the way we all prefer to do it). You can give your finalized library to clients or colleagues to represent their view into your platform. Some VARs want to offer their more sophisticated clients a new advanced interface into the app - this is it. Give them a DLL and support it just like any other component of your app (for free or fee). As a service I offer to build and support SDKs like this for VARs. Since you're in Australia, I recommend you contact T-Data Pty Ltd, as they are your regional resellers for mv.NET. As a worldwide Distributor I'll also be happy to answer all questions, and to provide mv.NET and related development services. Before Solution Objects, I created a MV provider for CSLA and ..netTiers, and I wrote my own Visual Studio plugin which generates strongly typed classes from a MV datasource. I was also writing a plugin based on the FOSS SQLite provider, which allows all Database Explorer functionality from VS, so that we could create EF libraries from MV as easily as we could from SQL Server. This was fun and the tools were very useful to me for that kind of work. But given that there is almost no market in this community for such things, and my time for tool development was limited, I decided to direct all of my efforts in this area toward helping to make Solution Objects the kind of solution that we all want in this kind of tool. There really isn't anything else like this in this market, so not only is mv.NET Solution Objects the only option, but it also happens to be a very good one. HTH Tony Gravagno Nebula Research and Development TG@ remove.pleaseNebula-RnD.com Nebula R&D sells mv.NET and other Pick/MultiValue products worldwide, and provides related development services remove.pleaseNebula-RnD.com/blog Visit PickWiki.com! Contribute! http://Twitter.com/TonyGravagno ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc
>From : Adrian Halid > Has anybody tried or found an ORM for Universe. > > I am looking at something along the lines of > NHibernate or Entity Framework. [AD] Yes, and to my knowledge there is only one. mv.NET includes a component called Solution Objects. You start with your standard dictionary defs. You add details required for strongly typed properties to create Extended definitions. You then define business objects which aggregate files and BASIC rules, and define strongly typed collections and relationships amongst the various classes. Then you generate C# or VB.NET code which you then compile into a DLL. The new modules are as capable as those of NHibernate or EF for validating data, supporting read-only properties, managing cascading updates, etc. You have all of the source and can walk through and change the functionality if required. The code is generated off of templates (like CodeSmith) which you can change to effect global changes to your apps. Direct file read/write is managed for you, or you can choose to have I/O go through your BASIC code (which is more in-line with the way we all prefer to do it). You can give your finalized library to clients or colleagues to represent their view into your platform. Some VARs want to offer their more sophisticated clients a new advanced interface into the app - this is it. Give them a DLL and support it just like any other component of your app (for free or fee). As a service I offer to build and support SDKs like this for VARs. Since you're in Australia, I recommend you contact T-Data Pty Ltd, as they are your regional resellers for mv.NET. As a worldwide Distributor I'll also be happy to answer all questions, and to provide mv.NET and related development services. Before Solution Objects, I created a MV provider for CSLA and ..netTiers, and I wrote my own Visual Studio plugin which generates strongly typed classes from a MV datasource. I was also writing a plugin based on the FOSS SQLite provider, which allows all Database Explorer functionality from VS, so that we could create EF libraries from MV as easily as we could from SQL Server. This was fun and the tools were very useful to me for that kind of work. But given that there is almost no market in this community for such things, and my time for tool development was limited, I decided to direct all of my efforts in this area toward helping to make Solution Objects the kind of solution that we all want in this kind of tool. There really isn't anything else like this in this market, so not only is mv.NET Solution Objects the only option, but it also happens to be a very good one. HTH Tony Gravagno Nebula Research and Development TG@ remove.pleaseNebula-RnD.com Nebula R&D sells mv.NET and other Pick/MultiValue products worldwide, and provides related development services remove.pleaseNebula-RnD.com/blog Visit PickWiki.com! Contribute! http://Twitter.com/TonyGravagno ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] Is there any ORM's for Universe. NHibernate, Entity Framework etc
Hi All, Has anybody tried or found an ORM for Universe. I am looking at something along the lines of NHibernate or Entity Framework. Regards Adrian Halid Senior Analyst/Programmer IT Vision Australia Pty Ltd (ABN: 34 309 336 904) PO Box 881, Canning Bridge WA 6153 Level 3, Kirin Centre, 15 Ogilvie Road, Applecross, WA, 6153 P: (08) 9315 7000 F: (08) 9315 7088 E: adrian.ha...@itvision.com.au W: http://www.itvision.com.au ___ NOTICE : This e-mail and any attachments are intended for the addressee(s) only and may contain confidential or privileged material. Any unauthorised review, use, alteration, disclosure or distribution of this e-mail (including any attachments) by an unintended recipient is prohibited. If you are not the intended recipient please contact the sender as soon as possible by return e-mail and then delete both messages. ___ ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users