MultiBlog Implementation of BlogEngine.NET is Now

by BizTron 15. December 2009 18:32

BlogEngine.NET Core Version 1.5.1.31 is running on this server as of this Post.

ref: (Waiting for a Minor Release of BlogEngine.NET with MultiBlog)

 

I based my implementation on SqlBlogProvider, but since it was out of synch with BlogEngine.NET I had a dilemma.  My biggest complaint about BlogEngine.NET if I had any at all was the fact that sometimes changes come at a snails pace.  This is not to say that you can’t find a new build three every other day, but that the major enhancements I want don’t always take, or in the case of MultiBlogs, the most popular enhancement to date, is completely ignored.  Once Jacob Proffitt created a solution, I figured it would be rolled into BlogEngine.NET.

OK, so I was Way off on this one. So here’s a strategy:

  • Get the latest BlogEngine.NET code and use it as a baseline. (1.5.1.31)
  • Get the latest SqlBlogProvider code and ditto. (27978)
  • Make sure to upgrade Everything to .NET 3.5
  • Modify the SQL Database Schema to include Blog and Host tables, and BlogDataStoreSettings
  • and add BlogId columns where necessary.
  • Recreate the DBML for the new schema.
  • remove references to multiblog="true" because they don’t matter anymore.
  • Simplify and verify.

OK, done!!!  Now what?

I have a set of Blogs running an older version of everything and now I have a new schema.  Also, I have new capabilities and only a SQL script to modify or add new blogs.  It is simple but always required modifications before running.

  • Windows Form, new simple DBML for required tables…because the Provider model is too complex,
  • and Done.

Oh, and I needed a migration tool and some more fun with Linq to SQL, so I created a one-off migration tool with a useless UI that couple be done from a command line, but I thought I might need more.

And, it’s running now!!!

 

BlogEngine.NET code is now at version 1.5.1.39 (change set 31351)

 

Now I have to isolate changes, bug fixes, enhancements I want and implement…but this is the exact scenario I want to avoid.

  • Do I create a Branch that uses most of BlogEngine.NET?
  • Should I start over?

I think the best option is to start a new core based on current or future technology and leave behind what can be upgraded.  Linq, Entity Framework, WCF, Silverlight 4, .NET 4.0 can be used much more.  MVC can become a solid base for the UI, maybe. This is not a hard nut to crack, and get’s easier with time and new technology.  The hardest part about using BlogEngine.NET today is that it takes longer to fix than to build again from scratch.

It’s time for a new architecture.  I’m glad I didn’t create one myself a few years ago when BlogEngine.NET was introduced, but I will be happy when I can safely deploy a new version based on those principles.

Tags:

Blogging | BlogEngine.NET | Architecture | Entity Framework | LINQ | SQL Server

Waiting for a Minor Release of BlogEngine.NET with MultiBlog

by BizTron 5. December 2009 14:19

Pipedream: Multiple Blogs

I’m not sure if anyone else has noticed but the NUMBER ONE requested feature of BlogEngine.NET (That’s #1 by a landslide) is to support Multiple Blogs per installation.  I have been struggling with this concept and while searching for and designing a workaround using BlogEngine.NET and the Provider model using SQL Server only, I came across SqlBlogProvider that also uses Linq to SQL.  This model supports Multiple Blogs in a single SQL Server Database in a single Application folder.  It now also supports multiple hosts or domains per blog if required.  So the only dilemma I’m struggling with today is where to go from here.

 

Current Conundrum:Linq2SqlBlogProvider

Now that the SqlBlogProvider supports what I need, although there are a few items I’ve extended I’m still having problems syncing between the “current” or “newest” code base(s) of BlogEngine.NET and the SqlBlogProvider.  They don’t jive, nor should they.  However, I want it all, and I want it now…Yeah, I know it sounds like a song.  The strategy I would have employed was to Add a blog table, and then the host table to support another level of hierarchy, then add a BlogId to each necessary table.  However, in order to create the least possible interference with the Core, the SqlBlogProvider author added separate tables (Junction tables) and a separate Provider project.

Status:

I’ve made the changes to the latest BlogEngine source I had from a few days ago (1.5.1.31) and SqlBlogProvider (1.5 Change Set 27978) but haven’t finished the work I wanted yet.  My plan is to finish some bug fix work across both projects which may be done as far as my issues are concerned.  Now I’m adding a GUI for setting up new Blogs (via Linq and the new provider I chipped out of SqlBlogProvider).  Then I’ll dog-food it for a while and see where it leads me.  I may learn enough from this to start fresh and rebuild the core in my own way but I’m willing to share the results if someone asks.

You’ll know it’s in use when the BlogEngine.NET version at the bottom of this blog changes from 1.5.1.22 to 1.5.1.31 or above.

Tags: ,

LINQ | BlogEngine.NET | Architecture

BlogEngine.NET SqlBlogProvider has Post update issue

by BizTron 10. August 2009 06:32

This is what you see when attempting to rate a new post. Click on a Star to rate the post.  Notice the infinitesimally small rating that is generally added when creating a first post.  This may be something I did myself while trying to “fix” the Add a new Blog script.

image

 

These are the symptoms I could find so far, but I cannot isolate the DateTime property that is causing the Exception.More...

Tags: ,

BlogEngine.NET | Blogging | Architecture | LINQ | SQL Server | ASP.NET | .NET

Give a GIF a Transparent Background

by BizTron 4. June 2009 05:07

Or that’s the idea at least.

Lego Cube 196 LegoTransLogo196More...

Tags: ,

Architecture | General | Photography

Using the Entity Framework in .Net 3.5 SP1

by BizTron 3. September 2008 08:00

From: TVUG President, Griff Townsend:

Sorry for the delay in getting this out: things always seem to get hectic around the time to put announcements out, and this month was no exception. With that said, I've spoken with this month's presenter (in the mirror), and he is ready to go.
Using the Entity Framework in .Net 3.5 SP1


Speaker: Griffith Townsend, MCP.Net, MCSE
When: Tuesday September 8th, 2008 - 6:30-9PM
Where: VersaTrans Solutions, Latham, NY


When developing multi-tiered applications, it’s not uncommon that to encounter code and architectural “noise” where a developer is forced to shift languages between the business logic layer and the data layer. The preference of many developers is the use of tools (typically Object Relational Mapping solutions) to abstract the database-specific aspects of the data layer into objects usable by the upper layers by object-oriented programming languages. More...

Tags: , , ,

.NET | ADO.NET | Architecture | LINQ | SQL Server

Adding new features to BlogEngine.NET

by BizTron 7. August 2008 08:26

It's already mid-August and I just finished a round of BlogEngine.NET updates to take advantage of the new features in 1.4.5.x.  For a lot of folks, the need to Blog is what makes this platform so valuable.  But my clients, and my own interests also include adding Extensions and Advertising.  Now that there's  a Text box Widget, I can add simple ads like an Amazon link, Google AdSense, and affiliate links right in the Widget Zone without any special code.  Maybe this can be improved to target this medium, but I have to admit, if it works, I'm going to use it as is.  But there are a few things I'd like to see sooner than later.

Multiple Blog Support

What if I had 15 Blogs on different topics and some of them included overlapping authors?  I would like to support this configuration with One code base, One server or service layer, connecting to a Single SQL database or SQL Server farm.  I know I'd want this because I want it now and I have 8 Blogs, with 8 Web Apps, 4 AppPools, and 8 sets of XML Data.

SQL Server Express wouldn't cut it since my server started running into resource issues.  Not because of SQL Server but because I need 8 databases the way this configuration is setup.  Even if I upgrade my server (or hosting platform) to allow for more capacity, it doesn't scale.  Also, I will spend more time maintaining Blogs than writing for them.  So more Blogs = Less Blogging.  That's not a positive goal for me. Frown More...

Tags: , , ,

Hosting | Architecture | BlogEngine.NET | Development | Theme

WCF Essentials

by BizTron 10. June 2008 06:00

TVUG Presentation - June 10th, 2008 (Now June 17th)  

This event was postponed due to serious weather advisories.

Be sure to check the TVUG Website for any updates.

TVUG President wrote in an e-mail to the Tech Valley .NET Users Group membership.  Please join us...

Join us for our last meeting before our summer break as Andrew Badera introduces us to Windows Communication Foundation. The current plan is that we won't have another meeting until September '08, but we might have a special meeting if we can get an INETA speaker in the area. Let's put it to a vote next week!

WCF Essentials


Speaker: Andrew Badera, CTO, Change Round-Up
When: Tuesday June 10th, 2008 - 6:30-9PM
Where: VersaTrans Solutions, Latham, NY


The global acceptance of Web services, which includes standard protocols for application-to-application communication, has changed software development. Windows Communication Foundation (WCF) is designed to offer a manageable approach to distributed computing, broad interoperability, and direct support for service orientation.

In order to simplify development of connected applications through a service-oriented programming model, Windows Communication Foundation bundles a lot of powerful features in one easily configured package. A couple notable features, as service architectures grow more complex and support greater workload, are duplex communication and connection throttling. This presentation will review the essentials of WCF, utilizing a Silverlight GUI to demonstrate latency and scaling characteristics of a simplex polling application vs. a duplex push application.

Speaker Bio
A lifelong geek, Andrew Badera has been immersed in the software world since the age of seven, when his parents bought him a Tandy BASICA programming book instead of Chuck Yeager's Advanced Flight Simulator he had been asking for, months on end. Not to be dissuaded, he read the book three times over the following week, and immediately set about, without any great degree of success, trying to write his own flight simulator. Currently he serves as CTO of Change Round-Up in Coxsackie, NY as well as senior software engineer on the Open Systems team at Davis Vision, Inc. in Latham.

Tags: , ,

Architecture | ASP.NET | C# Development | Development

Next-Generation UX Development with Silverlight and WPF

by BizTron 7. May 2008 09:24

TVUG Presentation - May 13th, 2008 

TVUG President wrote in an e-mail to the Tech Valley .NET Users Group membership.  Please join us...

This month, we welcome Chris Bowen, Microsoft's Developer Evangelist for the Northeast, as he dazzles us with GUI bliss. If you're getting started with XAML, WPF, and Silverlight, or just interested in the topic, make your way down to see us on Tuesday, May 13th.

Next-Generation UX Development with Silverlight and WPF


Speaker: Chris Bowen, Developer Evangelist - Northeast, Microsoft
When: Tuesday May 13th, 2008 - 6:30-9PM
Where: VersaTrans Solutions, Latham, NY


In this talk, we'll introduce the concepts behind both WPF (Windows Presentation Foundation) and Silverlight. You'll see what they do, how they're related, when you might use them, and how to develop applications using them. You'll see some of the interesting ways customers are using WPF and Silverlight today to improve the user experience of their applications. After covering the concepts, we'll dive into the practical developer story, using Visual Studio 2008 to show how to use these declarative, XAML-based approaches to create high-end effects without the high-end effort.

BIO:
Chris Bowen (http://blogs.msdn.com/cbowen) is Microsoft's Developer Evangelist for the Northeast. A software architect and engineer with over 16 years of experience, Chris joined Microsoft after holding senior architect and developer positions at companies such as Monster, VistaPrint, Staples, and IDX Systems and consulting on web presence and eCommerce projects with others. He is coauthor of "Essential Windows Communication Foundation" [Addison-Wesley] and "Professional Visual Studio 2005 Team System" [WROX]. He specializes in application architecture and building highly-scalable transactional web systems and holds an M.S. in Computer Science and a B.S. in Management Information Systems, both from Worcester Polytechnic Institute.

Tags: , ,

.NET | Architecture | Ineta Speaker | Microsoft | Silverlight

Powered by BlogEngine.NET 1.6.0.1
Theme by Extensive SEO



Recent Posts


CompUSA

Elan Form Etch | Hard-shell Etched Leather Case

Handango Inc.

J&R Computer/Music World

Hot Offers

OmahaSteaks.com, Inc.

Tech Depot - An Office Depot Co.

TigerDirect

Toshiba - Toshibadirect.com