Saturday, November 25, 2006

Venexus Inc., decided to build a full blown search engine for DotNetNuke. Not one that would just index a single DNN site, but one that would allow you to index all portals in a DNN installation AND information from external sites. And how would external site indexing best be handled? via RSS feed aggregation of course. Seamus is the first of the two modules that make up the Venexus Search Engine. SEAMUS = Search Engine Aggregation Module Utilizing Syndication.

A Quote from the Venexus blog posting written by Venexus CEO Jeff Smith

" We started with traditional DotNetNuke module development…until EntitySpaces was released. I’m an old ASP/VB developer and personally, it took me a bit to get my head wrapped around how ES worked, but once I figured it out, I was hooked. ES saves the day by automagically generating all the CRUD (create, read, update, delete). While very similar to the logic of a BusinessController and InfoObject, ES uses Collections and Entities. But, where I found ES the most useful is the Dynamic Queries you can write directly into the business logic.

Sure, I have used DAL Builder Pro, which was a huge time saver, but EntitySpaces made me to never want to develop any other way. Plus, last I checked, DAL Builder Pro was still only for DNN 3 development. The ease of generating the DAL and the ability to easily Regenerate the DAL if the database schema changes, makes ES the tool of choice for all of our module development. I cannot even begin to count the hours I have previously spent hand coding changes in a DAL due to spec changes. Oh how I wish I had all those hours back!

With the new DNN admin grid templates, it is just ridiculous how much code is generated before having to write the first line. The new template will generate an editable grid of the table(s), with sorting, paging, and search. If you are interested in .Net development (this is not just a DNN tool, it works for all .Net 2.0 development and using C# or VB.Net), you must check it out. "

read more on the Venexus blog ...

Venexus Inc., is a leading Business Service Provider, creates customized, easy to use DotNetNuke modules for corporate portals.

posted on Saturday, November 25, 2006 11:48:11 AM (Eastern Standard Time, UTC-05:00)  #   
 Friday, November 24, 2006

MyGeneration 1.2 RC1 - Release Candidate Available


MyGeneration, makers of the 100% free Code Generator and O/R Mapping tool, is now very close to their long awaited release of MyGeneration 1.2. They are looking for some help in testing their release candidate. If all goes well MyGeneration 1.2 could be as little as a week away from the official release, however MyGeneration needs to hear from sufficient numbers of folks on this thread before they release ==> http://www.mygenerationsoftware.com/phpBB2/viewtopic.php?t=2392

Do not install this side-by-side with the 1.5.1.1. release, install over the top.

Here are some of the new features. Please help us verify the build.


• Compiled with .NET 2.0, should be able run without the 1.1 .NET Framework.
• Improved Dock Manager
• Uses the New Scintilla.NET Editor
• Asynchronous Connection Testing
• IBM iSeries Support
• MyMeta Plugin's for 3rd Parties
• VistaDB 3.0 Support (with Views)
• Upgraded old 1.1 provider DLLs to 2.0 providers (SQLite, PostgreSQL, Firebird)
• Lots of various bug fixes


Download ==> MyGeneration 1.2.0 RC1 (Microsoft.Net 2.0)

MyGeneration looks forward to hearing about your experiences with the release candidate on the thread link posted above.

posted on Friday, November 24, 2006 9:36:52 AM (Eastern Standard Time, UTC-05:00)  #   
 Wednesday, November 22, 2006

The EntitySpaces team has been hard at work. We just pushed up a new 1.5.2 beta with lots of great new features such as: a new provider for VistaDB, the ability to programmatically set a default connection which facilitates configless operations, and full support for the DotNetNuke object qualifier. However, we have also been investing a great deal of time on our documentation. We have been using NDoc thus far, but with the recent melt down we began keeping an eye on Sandcastle waiting for the product to mature to a level that we felt comfortable with in order to ship it with EntitySpaces. We also found a very helpful tool cleverly entitled SandcastleGUI. Well, rejoice all ye users the time has come. Let me give you a quick peek at the new documentation. Click on one of the thumbnails below for a full size version.

The new documentation will ship with our 1.5.2 release and the improvements in both presentation and content should make using EntitySpaces even easier(is that even possible?;). We hope you find the new documentation useful, and as always ping us with any suggestions, comments, or questions.

posted on Wednesday, November 22, 2006 10:21:04 AM (Eastern Standard Time, UTC-05:00)  #   
 Sunday, November 19, 2006

The EntitySpaces 1.5.2 Bets is now available for download. Below are the enhancements and fixes added to this release:

  • Full support for VistaDb 3.0
  • Compact Framework Providers for both Microsoft SQL Server and VistaDb
  • Full compliance with the DotNetNuke {objectQualifier} when using dynamic sql or stored procedures.
  • EntitySpaces can now be run without a config file. This is intended to help facilitate modular software development, and removes the situation where your end users are required to enter config entries. Below is an example of how to set your default connection programmatically


// Manually register a connection
esConnectionElement conn = new esConnectionElement();
conn.ConnectionString = "User ID=sa;Password=;Initial Catalog=Northwind;Data Source=localhost";
conn.Name = "GroovySQL";
conn.Provider = "EntitySpaces.SqlClientProvider";
conn.ProviderClass = "DataProvider";
conn.SqlAccessType = esSqlAccessType.DynamicSQL;
conn.ProviderMetadataKey = "esDefault";conn.DatabaseVersion = "2005";

// Assign the Default Connection
esConfigSettings.ConnectionInfo.Connections.Add(conn);
esConfigSettings.ConnectionInfo.Default = "GroovySQL";

// Use the code as usual
Employees e = new Employees();
if (e.LoadByPrimaryKey(1))
{
    e.Save();
}

int? i = e.EmployeeID;

  • Added [XmlIgnore] to hierarchical objects to prevent endless loops with self referencing relationships. This will be further refined again in our 1.6.0 release.
  • Added Lock/SyncLock in two places to protect static data

This is a full beta and all providers are included.

  1. This beta requires the new MyGeneration beta available on the MyGeneration homepage.
  2. The EntitySpaces beta can be found in the trial forum HERE
posted on Sunday, November 19, 2006 9:20:55 AM (Eastern Standard Time, UTC-05:00)  #   
 Thursday, November 09, 2006

So, you must be thinking "What's this EntitySpaces 1.5.2 release? we thought 1.6.0 was next?". The truth is we weren't originally planning to do a 1.5.2 release but it became apparent that this release needs to happen for several reasons. One of the main driving factors for this release is VistaDB 3.0, we plan to fully support VistaDB 3.0 before its official release. It is our hope that upon the next release of the VistaDB CTP there will be no issues preventing us from releasing the EntitySpaces DataProvider for VistaDB, indeed all of the coding is done for it already. We know the VistaDB team is working hard on their next CTP. 

Also, VistaDB runs under the Compact Framework and tonight we successfully compiled EntitySpaces under the Compact Framework as well. This means any device VistaDB runs on EntitySpaces will also. EntitySpaces should also now run under Mono but we have not tested that yet. About the only real problem encountered in getting EntitySpaces to compile under the Compact Framework was our custom configuration section logic and binary serialization. We will still maintain only one codebase and use #IFDEF's in our code to compile for the Compact Framework and without. We are focusing now upon getting EntitySpaces working clean on the Compact Framework. Part of this involves allowing EntitySpaces to run in configless mode which we will offer for both the Compact Framework and our main build. This will help those who might be developing for hosting environments and who need to have a hundred or so connections.

Also, futher support for DotNetNuke including the DNN Object Qualifier and the ability to pull the the connection string directly from the DNN config file are in the works. Of course, there will be a few fixes to address some issues that have been reported as well.

It is our thinking that the 1.5.2 release will be ship near the end of November or early December. Our 1.6.0 release is still all about ASP.NET DataBinding on steroids including hierarchical databinding. The EntitySpaces 1.6.0 roadmap should be published by the end of November and our thinking is that the 1.6.0 release will ship in early 2007. 

- The EntitySpaces Team

 

posted on Thursday, November 09, 2006 9:35:30 PM (Eastern Standard Time, UTC-05:00)  #   
 Sunday, November 05, 2006

This is the question that was posed on the DNN forums yesterday.

Is it just me or are data providers done wrong?

Hey all - I'm trying to understand the basic architecture of DNN and am wondering if I am off base with how I understand the data provider model to work.  From what I can tell EACH module has a specific data provider implementation in addition to the abstract dataprovider class.  Unless I'm missing something this seems really messed up - For instance I would LOVE it if DNN ran on MySql but it doesn't - so if someone wants to run a DNN site on MySQL, they would have to add MySql data providers in all modules?   If this is the case, this just seems horribly wrong - it would be MUCH better if we had the data providers centralized and then all modules would point to a generic common abstract class - so one could add/change data providers on the entire system without having to modify or add code to existing modules.  The way it stands right now, it seems like it'll take a hell of a lot of effort to get another provider simply because one would have to touch all the core modules.  Am I missing something?

Bob


Yes Bob, you're missing EntitySpaces. Well, I (Mike speaking here) wrote up a very nice and informative post letting Bob know that what he was describing was in fact EntitySpaces. It was a pretty involved post expanding on what Scott said and correcting a misconception on a subsequent post by another poster . Bob is obviously a very bright guy and asked the very question that all DNN developers should be asking. I went on to explain how our massive NUnit test suite executes against Microsoft SQL, Oracle, MySql, Microsoft Access and now VistaDB (not yet released but working). We use the same exact binary in this test suite against all of our supported databases. Imagine one code base with your modules running on all database systems. I also stated that it's too bad DNN itself doesn't run on EntitySpaces because its reach would be far wider and "would be DNN module developers" would have a very simple programming model instead of the rather clunky DNN DAL. Also, they would have at their fingertips Transactions, LINQ Support, serialization and far more customers to reach out too to make their ventures more profitable.

The above isn't my exact statement, I didn't call the DNN DAL clunky in the post and it was at least 4 times as long as the text above explaining that EntitySpaces was exactly what Bob was in fact wanting in an architecture. My post was rejected with no explanation and without even a notification, this is their right of course. But that doesn't mean I have to let this go unnoticed. We are DNN fans and we won't be silenced. It makes me wonder if any of the younger new .NET portals are paying attention here.

[UPDATE - Nov 6, 11:00 EST]
Well, a day and half after my original post and after this blog post had gotten around the horn my original post on that thread somehow appeared, and for that I say thankyou to the DNN folks. Nonetheless, this post remains. However, We extend an open invitation to the DNN core team members and founder to speak with us about blowing the doors wide open for the DotNetNuke community, we believe it is within our power to help DotNetNuke do just that.

posted on Sunday, November 05, 2006 9:45:40 PM (Eastern Standard Time, UTC-05:00)  #   
 Friday, November 03, 2006
EntitySpaces has been reviewed by Mike Gunderloy, the editor of Larkware. You can see the review HERE or scroll down and see the review on the Larkware homepage.
posted on Friday, November 03, 2006 11:37:54 AM (Eastern Standard Time, UTC-05:00)  #