News Blog - For September 2008
-
Now on ASP.NET MVC Preview 5
I'm proud to announce the next release is built on MVC. The move to MVC has many benefits for BlogService:
- No more WCF issues
- Testable
- Simplified authentication
- VS.net development server support
- Better flexibility around themes
- Url rewriting no longer required
- Better ajax scenarios
- Cleaner deployment structure (see right)
- Less configuration required
This website is already running on MVC and it appears overall speed has increased both on the browser and through Windows Live Writer (even on the new beta).
If you like to discuss the change to MVC, please head on over to the discussion already in progress.
-
Theme Scenarios
The development team is discussing themes in BlogSvc. I'm really interested in pushing towards using stylesheets as the primary method of altering a theme. As demonstrated by the success of the CSS Zen Garden, designers are comfortable working with CSS. I also believe it is safe to say that as browser technology continues to mature, designers will gain additional flexibility through CSS improvements.
The end-user scenario is very important to me and I want to target the whole range of users. Lets start with a non-technical user like my lovely wife. After talking with her, the ideal workflow for her would be:
- Click a link on her blog that takes her to a website like http://www.freewpthemes.net/
- Click a link on her blog that takes her to a website like http://www.freewpthemes.net/
-
Multiple Blogs via Collections and Workspaces
One of the major goals of BlogSvc is to support multiple blogs within a single application instance.
BlogSvc defaults to single workspace mode. Release 0.5 only supports a single workspace installed to the root of the website. With this single workspace, you can have any number of collections. For example, a personal site might have collections for:
- Personal Blog
- Work Blog
- Media Uploads
- Articles or Pages
- Photo Blog
Each of these collections can have multiple authors and contributors. However, it is likely that all the collections will be controlled by the same author(s). BlogSvc utilizes workspaces as a way to segment collections within a single application instance. Future versions of BlogSvc will support multiple workspaces in two different ways:
- Sub-folders, ex: http://www.mysite.com/workspace/collection
- Sub-domains, ex: http://workspace.mysite.com/collection
Also, the next release will support installation to a virtual directory. Virtual directory installations should support sub-folder workspace installations.
-
Convert from BlogEngine.Net to BlogSvc
I've added some code to the Test project to convert my blog over from BlogEngine.net. I exported the data as a BlogML file and then ran it through the code. It created a service document and atom entries. It worked well but is currently specialized for my situation.
- Some items in the future that should be considered:
- BlogML exports from other blog engines
- Broken links to images
- Updating links within content of existing blog posts
- GUI to guide the user
By adding a rewrite rule I can permanently redirect the old post locations to the new location.
#relocate old BlogEngine.NET posts
RewriteRule /post/(.+)\.aspx$ /blog/$1.xhtml [R=301,L]Check out my site which is based on a new blue theme that will be included with the next release.
-
Setup Development Environment
Abouch over on the discussion forum has a great post about how to setup BlogSvc on a local IIS7 server. He explains the steps of adding a new binding for hosting the service along side other existing websites in IIS7. This is needed because BlogSvc does not currently support installation to a directory below the root. We do plan to support that scenario in the future.
Also, the test project references the web testing assembly that is only available with Test/Suite edition of Visual Studio. You can safely remove this project until I have removed the dependency.
-
Deployment Release 0.5
The fifth release of BlogSvc is the first release that is ready for deployment. It includes an installation guide and the following great new/improved features:
- Entry ratings
- Annotation approval (comment approval)
- Browse by date, month or year
- Browse by category
- Browse by person, author, or contributor
- Collection index (archive)
- Collection & Feed Paging
- Full suite of Domain tests
- Install guide plus other documentation http://atomsite.net/info/Overview.xhtml
- ASP.Net forms authentication support
- Forms redirect bypass for WSSE
- Javascript (jQuery) code consolidated
- New Controls
- Archive Listing
- Category Listing
- Category Cloud
- Recent Entries
- Object model improvements (XmlBase)
As you can see, this brings BlogSvc in the realm of a fully featured blog engine. The combination of AtomPub, the Asp.net website, and windows live writer allows full control over content.
For example, use Windows Live Writer to:
- Create new entries
- Upload images
- Update existing entries
- Delete entries
- Add new categories
- Publish drafts
Use the website to:
- Create new annotations (comments)
- Approve individual comments
- Approve all comments
- Delete a comment
Looking forward to the next release, we hope to include database support. Also, we may move towards using the MVC framework. If there are any "must-have" features you'd like to see in the next release, please let us know in the comments.