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]
 Tuesday, December 09, 2008

We have re-skinned our main site and we hope that you like what you see. We will be adding more content and changing our menu structure in the near future as well, so more changes are coming. Over the next few months we will be bulking up the documentation on our developer site. This will allow us to turn our main site into a marketing site that will convey the strengths and advantages of EntitySpaces and of course still act as our storefront.

We at EntitySpaces, LLC would like to thank "Ann Chanyoursang" for designing our new DotNetNuke skin. Ann is a designer for AppTheory which is a development consultancy and a member of the Trend Core Group in Atlanta, GA. AppTheory has a unique perspective on DotNetNuke. With Core Team Developers on staff and a roster of top tier clients using DNN, AppTheory is considered one of the top DotNetNuke consultancies.

Thanks Ann, great Job !!

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 LLC
Persistence Layer and Business Objects for Microsoft .NET
http://www.entityspaces.net

posted on Tuesday, December 09, 2008 8:45:38 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]