Sunday, June 04, 2006

We have taken our soon to be released ASPX template suite and generated a site against the Microsoft SQL Northwind database. Nothing you will see on this site was hand coded (except for the row of buttons at the top and the URL link at the bottom - both on our master page). The ASP.NET templates are pretty sophisticated and are style sheet driven so please don't get hung up on the color scheme. We realize you probably wouldn't use these pages as your actual website but the ASP.NET pages do provide a nice admin system that sys-admins can use to administer your database and that developers can use during development. They also act as a very nice reference on how to use EntitySpaces in an ASP.NET application.

The EntitySpaces ASP.NET templates support master pages (optional), use the new Multiview/View construct and the GridView, allow for sorting on the header columns, paging, sub grids, editing, searching, and more. We're only a matter of days until they are released at which point all customers will have access to the templates in the download area. The EntitySpaces ASP.NET templates will not be included in the trial version of EntitySpaces. The documentation and demo site of course will be open to everyone.

Take a look http://www.entityspaces.net/thedemo/Employees_admin.aspx

posted on Sunday, June 04, 2006 1:49:34 AM (Eastern Standard Time, UTC-05:00)  #   
 Tuesday, May 23, 2006

We just posted a video here to illustrate how simple it is to use EntitySpaces for module development on the DotNetNuke 4.x platform. This gets you up to where our standard code generation video starts with generating your EntitySpaces objects. We do plan to post an additional code generation video specifically for DotNetNuke in the near future, so stay tuned.

posted on Tuesday, May 23, 2006 7:06:40 PM (Eastern Standard Time, UTC-05:00)  #   
 Saturday, May 20, 2006

EntitySpaces release 1.5 currently has a soft target date of July 30th, 2006. We will keep you posted as we get closer to release. The list below is what we are planning for 1.5. Of course, any bug fixes will be included. The ASPX template will be released as soon as it is available, possibly as early as mid-June.

  • Hierarchical support. This is the number 1 priority for this release. It is no small thing and will support many-to-one, one-to-many, and many-to-many relationships,  DataBinding Sub-Collections, and lazy loading. 
  • Caching. There has been a great deal of interest expressed in caching. This will eliminate unnecessary trips to the database while avoiding duplicate objects in memory. It will be well integrated with our hierarchical plans.
  • ASPX template. The template generates pages using the GridView control. This will be an amazing template with very sophisticated features:
    • Versions for both C# and VB output.
    • Sorting, filtering, searching, and editing.
    • Detail pages with hyperlinks to related objects.
    • DropDown ComboBoxes for lookups. You can choose the display column or even define your own concatenation of columns.
    • Paging with user definable number of line items per page.

We have a growing wish list of items for inclusion in future releases. We have not prioritized them, yet, and some may never see the light of day, but feel free to comment on them and add your own:

  • Ability to load a table-based EntitySpaces object from a View. Similar to dOOdads.
  • Improved DataBinding.
  • Add a Clone method to the single entity.
  • Additional Providers.
  • Implement an .IsLoaded() method for entities and collections.
  • .NET Remoting.
  • WinForm templates.
  • Dynamic Query enhancements:
    • Support for common functions like UPPER() in WHERE clauses.
    • Support for JOINs.
  • Some tough ones. These are particularly thorny, especially in a multi-db environment, but we are still considering them as worth-while suggestions:
    • Updateable Views.
    • Add the ability for the EntitySpaces Dynamic Query API to do more than SELECT statements, such as INSERT, UPDATE and DELETE statements.
    • Add the ability to generate EntitySpaces objects from Stored Procedures (as opposed to just Views and Tables).

If your pet feature has not made the list, do not be discouraged. Just let us know what you want in the forums or by commenting on this post. And, don't let that stop you from using EntitySpaces 1.4 right now. It can replace tens (even hundreds) of man-hours of repetitive drudgery with well-tested, high-quality code. You are free to concentrate on the aspects of a project that make it unique. Ask yourself, "What price would I pay if I could spend more time with my family and friends?" Then, let your conscience be the guide.

The EntitySpaces Team


posted on Saturday, May 20, 2006 8:37:34 AM (Eastern Standard Time, UTC-05:00)  #   
 Saturday, May 13, 2006

 

EntitySpaces 1.4 initially was targeted for May 31st, however, we had to make some adjustments. Hierarchical support is now the main focus of our next release (1.5). Also, the ASPX templates are still underway and will be released separately before the 1.5 release. We had also planned on doing some databinding work as well but that has been pushed to 1.5 as well. However, all that said this is a terrific release, we have some very good features, a few fixes, and even a new MySQL provider in 1.4. See the release notes below for the details.         


·          EntitySpaces 1.4

o         Added templates to provide full VB.NET support

§          Includes a full set of Custom, Generated, and MetadataMap templates.

§          It is no longer necessary to pre-compile the generated code under C#.

§          Note: If you are using VBExpress, we recommend opening your Project Properties, selecting the Application properties tab, and clearing the Root namespace that the IDE set by default. That way, when you add “Imports BusinessObjects” to your code, it will work as expected.

o         Added an EntitySpaces provider for MySQL.

§          Works with MySQL 4.x using DynamicSql mode.

§          Works with MySQL 5.x and supports both DynamicSql and StoredProcedure modes, as well as Views.

o         Added an EntitySpaces Template to produce MySQL 5.x stored procedures.

o         Fixed stored procedure parameter name prefix handling for SQL Server, Oracle and Access.

o         Fixed parameter name handling for column names with spaces.

o         Added output parameter support to esParameters.         

public string GetFullName(int employeeID)
{
   
esParameters parms = new esParameters();

   
parms.Add("EmployeeID", employeeID);
   
parms.Add("FullName", esParameterDirection.Output, DbType.String, 40);

   this.ExecuteNonExec(esQueryType.StoredProcedure, "proc_GetEmployeeFullName", parms);

   return parms["FullName"].Value as string;
}

o         Fixed an obscure bug in Transaction Manager. (Special thanx to Graham Scragg and Thomas Coats for working with us on this.)

o         Improved Exception handling. We no longer wrap the exceptions which will make it much easier for you to see the real exception.

o         Updated and improved compiled help.

 

 

·          DotNetNuke

o         Includes an EntitySpaces ControlPanel module for DotNetNuke.

§          Displays EntitySpaces assembly information.

§          Allows you to upload/update EntitySpaces assemblies.

§          Allows you to encrypt/decrypt connection information in config files.

o         Added new template to create Sql scripts for DotNetNuke module development.


 

·          ASP.NET

o         Includes ASP.NET code for an EntitySpaces ControlPanel.

§          Displays EntitySpaces assembly information.

§          Allows you to update EntitySpaces assemblies.

§          Allows you to encrypt/decrypt connection information in config files.


 

·          EntitySpaces SqlDemo

o         Includes code demonstrating encrypting/decrypting app.config connection information.

o         Note: If SqlDemo is run from within Visual Studio, SqlDemo.vshost.exe.config gets encrypted. This file is only used by Visual Studio and should never be distributed with your application. To encrypt SqlDemo.exe.config, run SqlDemo.exe directly from the bin\Debug folder.


 

·          EntitySpaces Test Suite

o         Updated the test fixtures and added NUnit projects to test the EntitySpaces provider for MySQL.

o         Duplicated the C# tests in VB.

Note: Installation instructions at the bottom of the Release Notes for 1.4 contain special instructions for MySQL users. They explain how add the required Language Mapping to MyGeneration.


posted on Saturday, May 13, 2006 11:49:34 AM (Eastern Standard Time, UTC-05:00)  #   
 Thursday, May 11, 2006

Wow, so many good things to talk about for the upcoming EntitySpaces 1.4 drop. Another addition, is a complete template to generate DotNetNuke ready install scripts for any of your EntitySpaces business objects. It works just like any of our other stored procedure templates, and will allow you to generate a DNN ready script for all of your tables/stored procedures in one fell swoop. We previously mentioned that we will also be releasing native vb.net templates for ES with 1.4, so what are you waiting for DotNetNuke module developers? Quit wasting your time writing buggy, un-tested object persistence code and do it the easy way. ES 1.4 is scheduled to hit on Monday 05/15, get ready.

posted on Thursday, May 11, 2006 9:31:07 AM (Eastern Standard Time, UTC-05:00)  #   
In order to facilitate further simplification of the setup/upgrading of EntitySpaces in your DotNetNuke portal or plain ol' ASP.NET application we are please to announce that we will also release the EntitySpaces Control Panel.


This module/page will show you what EntitySpaces assemblies you have available and the versions of those assemblies. It will also allow you to upload assemblies when you are ready to update EntitySpaces. Lastly, and perhaps the coolest feature, is that this module will actually encrypt/decrypt the EntitySpaces connection info section of your web.config for you. We are just putting the finishing touches on the 1.4 drop and starting to package everything up for distribution, so you can expect to see this soon. We will have a DotNetNuke installable version, as well as an aspx page you can use in your ASP.NET projects. Winformers? Don't think we forgot to spread the love around, in the SqlDemo we have also added the encryption routines so that you can add this to your winform applications if you should so desire.


posted on Thursday, May 11, 2006 9:29:56 AM (Eastern Standard Time, UTC-05:00)  #   
 Sunday, April 30, 2006

Our EntitySpaces 1.3 release currently requires VB.NET folks to generate both C# and VB.NET classes. The 1.3 release works like this:

VB,NET Inheritance Tree
VB.NET Custom ==> C# Generated -> EntitySpaces.Core.dll

As of our 1.4 release VB.NET users will no longer have to generate and compile a C# class library.

New VB.NET Inheritance Tree
VB.NET Custom ==> VB.NET Generated -> EntitySpaces.Core.dll

We now have mirror image templates for C# and VB.NET. If you are a VB.NET programmer using EntitySpaces your life just got so much easier. We're still unit testing but everything looks great so far. This will also help DNN users as well.

posted on Saturday, April 29, 2006 11:30:55 PM (Eastern Standard Time, UTC-05:00)  #   
 Friday, April 21, 2006

The target date for EntitySpaces release 1.4 is scheduled for May 31st, 2006. We cannot guarantee the May 31st date but we've been pretty good at hitting our goals. The list below is what we are planning for the 1.4 release.

  • MySQL - A MySql EntitySpaces provider for 4.x and 5.x will be available. The provider will support MySQL stored procedures and views for MySQL 5.x.
  • Hierarchical support will be added. This will be done via lazy load and support many-to-one, one-to-many, and many-to-many relationships.
  • DotNetNuke
    • DNN stored procedure and table creation templates will be complete
    • A full DotNetNuke module using EntitySpaces will be provided along with all of the source code.
  • DataBinding support will be improved
  • A template will be provided that will generate ASPX pages using the GridView control

Of course, many other user suggested enhancements and bug fixes will make it into the 1.4 release. We have also purchased Demo Builder which is a great tool for making presentations. Scott will be making a series of presentations in fact on DotNetNuke and how to build modules using EntitySpaces that will come out before the 1.4 release.

Don't let that stop you from buying 1.3 today, with the price of oil going up like it is it may cost us more to ship it to you .... So buy in now while it's cheap (that's supposed to be humor)

posted on Friday, April 21, 2006 6:52:52 PM (Eastern Standard Time, UTC-05:00)  #   
 Monday, April 17, 2006

The EntitySpaces team has decided to give a free, one year, Professional version of the EntitySpaces architecture for .NET to the first three (accepted) DotNetNuke developers who build modules that use EntitySpaces. To be considered, you must send a proposal to support@entityspaces.net. Not all proposals will be accepted. We will be judging based on the following criteria:

  • Your proposal must describe how your DotNetNuke Module will use EntitySpaces to read and write to the database.
  • We must be able to host your module on our site, which means it will have to be a standard install.
  • The module must come with documentation that describes how you built it and you're experiences with EntitySpaces.

 

The contest ends May 31, 2006, so send in your proposal, and get in the running for your free version of EntitySpaces. Applicants will need to use the trial version to develop their module.

posted on Monday, April 17, 2006 10:29:52 AM (Eastern Standard Time, UTC-05:00)  #   

We just released EntitySpaces 1.3, with lots of new features, and fixes here are the complete release notes:

EntitySpaces - Release Notes for 1.3 

  • Fixed spaces in parameter names for SqlServer, Access, and Oracle.
  • Changes for text based Load(), ExecuteNonExec(), ExecuteReader(),  and ExecuteScalar() that handle both token {0} logic and named esParameter logic for SqlServer, Access, and Oracle.
  • Fixed Catalog|Schema naming in SqlServer and Oracle Enterprise  providers.
  • Fixed GUID (uniqueidentifier) handling in SQL Server, if the default is newid() they are marked as output parameters and automatically brought back in the object.
  • Added [Serialization] to the esStrings nested class in the esEntity generated classes so that Infragistics grids bind correctly.
  • Fixed error in the Dynamic SQL generation for Delete statements when composite primary keys were involved, this was fixed for Oracle, Sql Server and Access, it was using a comma where " AND " should have been.
  • The templates now inject the EntitySpaces version number into the header of the generated classes.
  • There is a new checkbox in the templates that allows you to ignore the schema and catalog in the metadata class and drive it entirely by the connection string. Checking this box is recommended if you are using SQL Server.
  • You can manually override the schema and provider in the connection string as follows:

this.MyEmployeesCollection = new EmployeesCollection();
this.MyEmployeesCollection.es.Connection.Catalog = "MyNorthwind";
this.MyEmployeesCollection.es.Connection.Schema = "User";

  • Added  some key attributes on some of the properties. 
    1. esEntity.StringFormat  -  [BrowsableAttribute( false )]
    2. esEntity.SpecialBinder -  [BrowsableAttribute( false )]
    3. esEntity.strFomat - [NonSerialized]

The Generated Entity & Collection Objects

    1. str -  [BrowsableAttribute( false )]
    2. Query -  [BrowsableAttribute( false )]
  • There are two new templates for DotNetNuke. We will be working hard in this area for the next release, any feedback on these templates by DNN folks is appreciated.



NUnit Test Suite

  • Table with 'dot' in name 
  • Columns with spaces in name 
  • Columns with underscores in name. 
  • Token {0} and named esParameter logic 
  • Inserts/updates for table with memo field. 
  • Guid Primary Keys


Documentation: 

  • Improved compiled help in esEntity and esEntityCollection areas. 
  • Tests Getting Started document.


Installation: 

New Installs:

  • Uninstall any Beta or Trial version before installing EntitySpaces.
  • Install the Binary first.
  • Source and Providers can be installed in any order after that. (They are separate downloads.)
  • You do not need to install 1.2 first.
  • The 1.3 downloads are full installs.

Upgrades:

  • Upgrading does not require uninstalling 1.2.
  • You should install 1.3 over the top of your 1.2 installation.
  • Install the Binary first.
  • Source and Providers can be installed in any order after that. (They are separate downloads.)
  • You will need to regenerate your "Generated" classes after you install.

 

If you are a DotNetNuke developer and you are looking for a kick ass O/R Mapping solution you should definately check it out. We have a free 45 day trial available to all registered users.

posted on Monday, April 17, 2006 10:19:57 AM (Eastern Standard Time, UTC-05:00)  #