Tuesday, January 13, 2009

Effective February 2, 2009 we are changing the price of our EntitySpaces Developer version. EntitySpaces Developer licenses are licensed per developer seat. A developer seat is required for each developer that uses the EntitySpaces API which includes using the generated classes in their programming tasks. The EntitySpaces Source Code does not count as a developer license.

The last time we changed our prices was in February of 2007, that was two years ago. EntitySpaces 2009 is a substantial improvement over EntitySpaces 2008 when it comes to Code Generation with the addition of our Visual Studio Integration. There are some very cool enhancements planned for the ES2009 architecture after the Q1 release. If you are a current customer you can renew your license before the February 2nd, 2009 price increase one time.


The new pricing is as follows:

Developer Version

Current =>  149.00 Per Developer   89.40 Renewal
As of Feb 2nd, 2009= >  299.00 Per Developer 179.40 Renewal

Source Code  

Remains Unchanged =>  499.00 Per Developer 299.40 Renewal

Quantity Discounts

    • 2  to  4 developer licenses     = 10% 

    • 5 or more developer licenses = 20%

         Quantity discounts apply to items purchased at the same time.

      EntitySpaces

      From Mobile Devices to large scale enterprise solutions in need of serious transaction support, EntitySpaces can meet your needs. Whether you’re writing an ASP.NET application with Medium Trust requirements, a Mono application, or a Windows.Forms application, the EntitySpaces architecture is there for you. EntitySpaces is provider independent, which means that you can run the same binary code against any of the supported databases. EntitySpaces is available in both C# and VB.NET. EntitySpaces uses no reflection, no XML files, and sports a tiny foot print of less than 200k. Pound for pound, EntitySpaces is one tough, dependable .NET architecture.

      EntitySpaces LLC
      Persistence Layer and Business Objects for Microsoft .NET
      http://www.entityspaces.net

      posted on Tuesday, January 13, 2009 9:02:24 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]
       Sunday, January 11, 2009

      Currently only the EntitySpaces Developer is available, the Trial version is not yet available. The Trial version will be published on the 12th (Monday night EST time). You can install Beta III right over the top of Beta II.

      Here are the fixes and enhancements in Beta III (Version 2009.0.0112.0).

      • The "What's New" tab now loads asynchronously so it no longer effects load time.
      • Added "Ctrl + A" support to select all tables or views in the template user interfaces. This was done on all table/view selection listboxes (excluding the Web Admin Grid templates).
      • There are now "Most Recently Used" lists available on both the Projects tab and Settings tab.
      • The Custom Master templates no longer overwrite existing files.
      • Fixed an error that could occur when saving project files.
      • Enhanced the Settings -> Naming Conventions -> Stored Procedure tab to help you visual customizations. We will also be doing this for the Class Names and Hierarchical tabs.

      The EntitySpaces.CommandLine.exe utility is also well underway. Once completed we will move from the beta to release candidate phase.

      EntitySpaces

      From Mobile Devices to large scale enterprise solutions in need of serious transaction support, EntitySpaces can meet your needs. Whether you’re writing an ASP.NET application with Medium Trust requirements, a Mono application, or a Windows.Forms application, the EntitySpaces architecture is there for you. EntitySpaces is provider independent, which means that you can run the same binary code against any of the supported databases. EntitySpaces is available in both C# and VB.NET. EntitySpaces uses no reflection, no XML files, and sports a tiny foot print of less than 200k. Pound for pound, EntitySpaces is one tough, dependable .NET architecture.

      EntitySpaces LLC
      Persistence Layer and Business Objects for Microsoft .NET
      http://www.entityspaces.net

      posted on Sunday, January 11, 2009 10:00:36 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]
       Wednesday, January 07, 2009

      This is not an example how to use EntitySpaces. Most everything shown below can be done through our DynamicQuery API which is the preferred way. For instance, the GetMaxSalary() example shown in the EmployeesCollection class below could be done via our DynamicQuery like this:

      EmployeesQuery query = new EmployeesQuery();
      query.Select(query.Salary.Max());
      int maxSalary = (int)query.ExecuteScalar();
      And the CustomLoad() load method shown in the EmployeesCollection class below could be done via our DynamicQuery like this: 
      
      EmployeesCollection coll = new EmployeesCollection();
      coll.Query.Where(coll.Query.LastName.Like("g%"));
      if(coll.Query.Load())
      {
          // Then we loaded at least one record
      }

      So, when you look at the class below remember this is merely to demonstrate to you some of the lower level support functions that you have at your disposal. The idea being, of course, even though you are using an ORM system generated via our ES2009 code generator you are not cut off from the low level ADO.NET API when you need to hug the metal.

      public partial class EmployeesCollection : esEmployeesCollection
      {
          public bool CustomLoad(string partialName)
          {
              // This populates the EmployeesCollection itself
              return this.Load(esQueryType.Text, "SELECT * FROM EMPLOYEES WHERE LastName Like {0}", partialName);
          }
      
          public DataSet GetDataSet(int someParameter)
          {
              // We hate DataSets ;)
              return this.FillDataSet(esQueryType.StoredProcedure, "TestProc", someParameter);
          }
      
          public DataTable GetDataTable(int someParameter)
          {
              // We hate DataTables ;)
              return this.FillDataTable(esQueryType.StoredProcedure, "TestProc", someParameter);
          }
      
          public IDataReader GetReader(string partialName)
          {
              // We hate DataReaders ;)
              return this.ExecuteReader(esQueryType.Text, "SELECT * FROM EMPLOYEES WHERE LastName Like {0}", partialName);
          }
      
          public int GetMaxSalary()
          {
              return (int)this.ExecuteScalar(esQueryType.StoredProcedure, "procGetMaxSalary");
          }
      }


      Of course, we don't really hate DataSets, DataTables, or DataReaders. If you are an EntitySpaces user then you know that using our DynamicQuery API is the way to go. However, if there is something you need that is not available in our DynamicQuery API you have full access to the underlying power of ADO.NET.

      There is also a utility class called esUtility that will allow you to access this lower level API without adding custom methods to your EntitySpaces classes. This can be useful when what you need to do doesn't really belong to a particular entity. Here is an example of using the esUtility class.

      esUtility util = new esUtility();
      IDataReader reader = util.ExecuteReader(esQueryType.Text, "SELECT * FROM EMPLOYEES WHERE LastName Like {0}", "g%");

      One thing to note is that you never use decorators on your parameters such as ? or @ or : (depending on your database). The EntitySpaces Data Providers do this for you. For instance, notice in the sample code below that we do not set the parameter name to "@Salary" rather we just use "Salary". This allows you to access stored procedures and still have a database independent application as the EntitySpaces Data Provider will "gussy up" the parameters with the proper decorator. In fact,  you really don't have to use the syntax below unless you need to provide extra information such as parameter direction or perhaps the precision or scale of a decimal for some reason. Otherwise you can just use the {0}, {1} syntax as shown above in the GetReader() method. Even when using the {0} syntax EntitySpaces will create a true parameter for you to ensure that no SQL injection attacks are successful.

      esParameters parameters = new esParameters();
      esParameter param = new esParameter("Salary", null, esParameterDirection.Output);
      parameters.Add(param);
      
      esUtility util = new esUtility();
      IDataReader reader = util.ExecuteReader(esQueryType.StoredProcedure, "GetMaxSalary", parameters);

      While were at it here's another data access tip. This tip allows you to trick your table based collection (via the DynamicQuery) to query against a view. Of course, you can generate entities from a view if you like but if you don't really want the additional classes you can use this technique instead. Notice how we set the QuerySource below.

      EmployeesCollection coll = new EmployeesCollection();
      coll.Query.es.QuerySource = "MyView"; // <== Select against this view
      coll.Query.Select(coll.Query.LastName, coll.Query.FirstName);
      coll.Query.Where(coll.Query.Salary > 50000);
      coll.Query.Load();

      This can be very useful since you can still commit this data back to the Employee table provided that you also brought back the primary key, of course. And remember, these are tricks, not necessarily how to use EntitySpaces. You can easily use our DynamicQuery API to build a join on the fly to that would accomplish the same thing as the view above.

      In summary we have worked very hard to expose all of the underlying power of ADO.NET and yet you never have to pull in SqlClient, OracleClient or any other ADO.NET provider. Better still you can invoke stored procedures and not lose database independence if that is what you are after. We hope you have learned a thing or two from this post.

      EntitySpaces

      From Mobile Devices to large scale enterprise solutions in need of serious transaction support, EntitySpaces can meet your needs. Whether you’re writing an ASP.NET application with Medium Trust requirements, a Mono application, or a Windows.Forms application, the EntitySpaces architecture is there for you. EntitySpaces is provider independent, which means that you can run the same binary code against any of the supported databases. EntitySpaces is available in both C# and VB.NET. EntitySpaces uses no reflection, no XML files, and sports a tiny foot print of less than 200k. Pound for pound, EntitySpaces is one tough, dependable .NET architecture.


      EntitySpaces LLC
      Persistence Layer and Business Objects for Microsoft .NET
      http://www.entityspaces.net

      posted on Wednesday, January 07, 2009 11:37:43 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]
       Sunday, January 04, 2009

       

                                     

      posted on Sunday, January 04, 2009 6:48:54 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]
       Friday, January 02, 2009

      The ES2009 Beta II for both the Developer and Trial are now available for download. The version is 2009.0.0103.0 and you can install it right over the top of the previous Beta, just make sure you have Visual Studio closed.

      • User Metadata now truly works.
      • The C# and VB Web Admin Grids are available (documentation coming upon official release).
      • The DotNetNuke SQL Template is available. 
      • Npgsql 2.0.2.0 will now work during code generation (PostgreSQL Driver)

      At this point we are 100% functional. Everything should work, including Projects.  Now we merely "Beta" and work on the documentation and help files.

      We will also be creating some new video's, one on our Project files and one on how to use the Web Admin Templates.


      From Mobile Devices to large scale enterprise solutions in need of serious transaction support, EntitySpaces can meet your needs. Whether you’re writing an ASP.NET application with Medium Trust requirements, a Mono application, or a Windows.Forms application, the EntitySpaces architecture is there for you. EntitySpaces is provider independent, which means that you can run the same binary code against any of the supported databases. EntitySpaces is available in both C# and VB.NET. EntitySpaces uses no reflection, no XML files, and sports a tiny foot print of less than 200k. Pound for pound, EntitySpaces is one tough, dependable .NET architecture.

      EntitySpaces

      EntitySpaces LLC
      Persistence Layer and Business Objects for Microsoft .NET
      http://www.entityspaces.net

      posted on Friday, January 02, 2009 11:09:58 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]
       Monday, December 29, 2008

      For those of you interested in the ASPX Admin Suite you will be happy to know these templates are being converted over into our ES2009 code generation model. The templates and the GridLoaders will be included with the installation and included in our BETA 2 which should be the final beta before the official ES2009 release. We are already generating fully functional admin pages via our C# Admin Suite and after we fully unit test it and fix any bugs mentioned in our forums we will create the VB.NET version. We will also provide much better documentation regarding how to generate your Admin Suite and what all the features in this powerful template do. The image below shows the ES2009 ASPX Admin Suite running under ES2009. The demo can be found HERE and we will upgrade it to our ES2009 model once we complete the templates.

       image

      From Mobile Devices to large scale enterprise solutions in need of serious transaction support, EntitySpaces can meet your needs. Whether you’re writing an ASP.NET application with Medium Trust requirements, a Mono application, or a Windows.Forms application, the EntitySpaces architecture is there for you. EntitySpaces is provider independent, which means that you can run the same binary code against any of the supported databases. EntitySpaces is available in both C# and VB.NET. EntitySpaces uses no reflection, no XML files, and sports a tiny foot print of less than 200k. Pound for pound, EntitySpaces is one tough, dependable .NET architecture.

      EntitySpaces

      EntitySpaces LLC
      Persistence Layer and Business Objects for Microsoft .NET
      http://www.entityspaces.net

      posted on Monday, December 29, 2008 8:41:49 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]
       Thursday, December 25, 2008

      We have created a very simple video that demonstrates how to build your first EntitySpaces 2009 application. This presentation really demonstrates how easy it is to create your application using EntitySpaces 2009 which is fully integrated into Visual Studio. This is the first in a series of videos that will demonstrate the power of EntitySpaces 2009.

      Click on the image below to start the video. Give it a moment to load.

      image

       

      From Mobile Devices to large scale enterprise solutions in need of serious transaction support, EntitySpaces can meet your needs. Whether you’re writing an ASP.NET application with Medium Trust requirements, a Mono application, or a Windows.Forms application, the EntitySpaces architecture is there for you. EntitySpaces is provider independent, which means that you can run the same binary code against any of the supported databases. EntitySpaces is available in both C# and VB.NET. EntitySpaces uses no reflection, no XML files, and sports a tiny foot print of less than 200k. Pound for pound, EntitySpaces is one tough, dependable .NET architecture.

      EntitySpaces

      EntitySpaces LLC
      Persistence Layer and Business Objects for Microsoft .NET
      http://www.entityspaces.net

      posted on Thursday, December 25, 2008 10:15:16 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]
       Sunday, December 21, 2008
      kick it on DotNetKicks.com

      We are pleased to make the EntitySpaces 2009 Beta available for public release. The EntitySpaces 2009 Trial version is fully integrated with Visual Studio 2005 or 2008. There is also a stand alone executable for those not using Visual Studio.

      EntitySpaces 2009 Visual Studio Add-In features

      • Settings Tab   - Connect to your database and customize your code generation settings.
      • Projects Tab   - Record and playback code generation templates.
      • Templates Tab  - Execute Templates.
      • Metadata Tab   - Online database metadata and user defined metadata.
      • Mappings Tab   - Database to property type mappings.
      • What's New Tab - Keep you up-to-date with EntitySpaces News.

      If you are looking at starting a new project in 2009 take a look at EntitySpaces 2009. It's a great architecture and we no longer rely on a third party code generator. To get started, simply install and switch to the "Settings" tab and connect to your database and click the "Save" icon and you're off and running. We will be publishing a series of video's on how to use ES2009 soon. Watch for these on our blog.

      NOTE:
      After installation you should see "EntitySpaces" on the Visual Studio "Tools" menu. If you do not see it go to your Programs -> "EntitySpaces 2009" menu you will find a "Manual Setup" PDF file which outlines a few simple steps performed within Visual Studio to manually add EntitySpaces to your Visual Studio Tools menu. It's really very easy. If you are using an international version of windows you will need to follow those steps.

      Also, if you have the alpha or pre-beta installed:

      1. Close all instances of Visual Studio
      2. Uninstall the ES2009 Alpha or Pre-Beta
      3. Delete your C:\Documents and Settings\All Users\Application Data\EntitySpaces folder (will be a different folder on Vista)
      4. Now install the ES2009 Beta and go to the "Settings" tab and reconnect to your database  (THEN PRESS THE SAVE ICON ON THE SETTINGS TAB)

              

       

      EntitySpaces Features

      • Mono Support
      • Compact Framework Support
      • Medium Trust Support
      • Design Time Data Binding
      • Hierarchical Data Models
      • Powerful Dynamic Query API
      • Binary and XML Serialization
      • Data Provider Independence
      • Two Different Transaction Models
      • Saving via Stored Procedures or Dynamic SQL
      • Generated from your Database Schema
      • No XML mapping files. 
      • LINQ Support for Collections
      • Regenerate Without Losing Custom Business Logic
      • Source Code Available

       

      EntitySpaces

      From Mobile Devices to large scale enterprise solutions in need of serious transaction support, EntitySpaces can meet your needs. Whether you’re writing an ASP.NET application with Medium Trust requirements, a Mono application, or a Windows.Forms application, the EntitySpaces architecture is there for you. EntitySpaces is provider independent, which means that you can run the same binary code against any of the supported databases. EntitySpaces is available in both C# and VB.NET. EntitySpaces uses no reflection, no XML files, and sports a tiny foot print of less than 200k. Pound for pound, EntitySpaces is one tough, dependable .NET architecture.

      EntitySpaces LLC
      Persistence Layer and Business Objects for Microsoft .NET
      http://www.entityspaces.net

      posted on Sunday, December 21, 2008 8:13:44 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]
       Friday, December 19, 2008

      For customers only. If you can please download the ES2009 Pre-Beta in our downloads area and give it a run through and report anything back to us in our forums.

      IMPORTANT !!

      * Close all instances of Visual Studio

      * Uninstall the ES2009 Alpha

      * Delete your C:\Documents and Settings\All Users\Application Data\EntitySpaces folder (will be a different folder on Vista)

      * Now install the ES2009 Pre-Beta and go to the "Settings" tab and reconnect to your database
         (THEN PRESS THE SAVE ICON ON THE SETTINGS TAB)

      WHATS CHANGED

      * The International install issue is NOT FIXED YET but should be by this weekend

      * The "Projects" tab is implemented

      * Microsoft Access should work just fine

      * It should work on 64 bit machines

      * The stand alone app shouldn't require Visual Studio to be installed

      * The User Metadata is now saved

      * Various UI issues tweaked

      The reason we are releasing this pre-alpha is to get feedback from you before our official alpha release this weekend. The version number didn’t change, it's still versioned as the Alpha.

      From Mobile Devices to large scale enterprise solutions in need of serious transaction support, EntitySpaces can meet your needs. Whether you’re writing an ASP.NET application with Medium Trust requirements, a Mono application, or a Windows.Forms application, the EntitySpaces architecture is there for you. EntitySpaces is provider independent, which means that you can run the same binary code against any of the supported databases. EntitySpaces is available in both C# and VB.NET. EntitySpaces uses no reflection, no XML files, and sports a tiny foot print of less than 200k. Pound for pound, EntitySpaces is one tough, dependable .NET architecture.

      EntitySpaces

      EntitySpaces LLC
      Persistence Layer and Business Objects for Microsoft .NET
      http://www.entityspaces.net

      posted on Friday, December 19, 2008 12:37:48 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]
       Friday, December 12, 2008
      We thought we would share with you what came out of this past Wednesday's EntitySpaces Team meeting which we hold every Wednesday. Our plan is to release the ES2009 Beta on December 22nd. The Beta will be available to customers as a true Developer Version and to the public as a Trial version which will be posted on our download page. In fact, we will encourage new users to go with the ES2009 Beta over the EntitySpaces 2008 Trial version.

      The Beta should have full functionality including the Projects Tab which will allow you to record and playback templates (and it's very easy to use). We have fixed all of the issues reported in the Alpha and have made many more improvements.

      There are two items that will not be in the Beta that will be delivered in the official ES2009 release. The first being the ASPX Admin Suite. However, once the Beta is released we are going to be giving our full attention to the ASPX Admin Suite and will porting the C# and VB versions over to ES2009 template system and fixing all of the known issues. We know the Admin Suite has fallen behind and is really in need of some attention. Secondly, the ES2009 Command Line utility will also be created which will allow you to generate your EntitySpaces Architecture from the command line. This utility will be able to execute individual templates as well as entire projects.

      While we haven't committed to an official release date we have in mind the end of January 2009 as our goal but that is an aggressive date. Once we ship ES2009 we will be free of third party code generators and then turn our full focus to the EntitySpaces Architecture itself.

      EntitySpaces

      From Mobile Devices to large scale enterprise solutions in need of serious transaction support, EntitySpaces can meet your needs. Whether you’re writing an ASP.NET application with Medium Trust requirements, a Mono application, or a Windows.Forms application, the EntitySpaces architecture is there for you. EntitySpaces is provider independent, which means that you can run the same binary code against any of the supported databases. EntitySpaces is available in both C# and VB.NET. EntitySpaces uses no reflection, no XML files, and sports a tiny foot print of less than 200k. Pound for pound, EntitySpaces is one tough, dependable .NET architecture.

       

      EntitySpaces LLC
      Persistence Layer and Business Objects for Microsoft .NET
      http://www.entityspaces.net

      posted on Friday, December 12, 2008 9:49:47 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]