Getting BlogEngine.NET to work within a DotNetNuke website

by brogge 16. February 2009 23:40

Since I wasn't completely happy with the functionality the default DotNetNuke blog module provides, I decided to change to BlogEngine.NET. As you can see from the address of this blog I wanted to include the blog in our company website as a sub-directory.

When creating a virtual application within the DNN root website I ran into some errors. Whenever I tried to open the blog I got an error regarding Resources that could not be found.

I added the following lines of code (marked in red) to the web.config of the DNN root and now they are running happily next to eachother.

<location path="." inheritInChildApplications="false">
  <system.web>
    ...
  </system.web>
</location>

Currently rated 5.0 by 3 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , , ,

BlogEngine.NET

Our first development surface arrived !

by brogge 14. February 2009 05:13

Yesterday our first development surface unit has arrived. We encountered some minor issues when installing it (mostly because of a lack of knowledge). This post describes some of these issues and the solutions we have found. Hopefully this information can help other people when installing a surface for the first time.

We ordered the development unit about a week ago and had it delivered yesterday, so we thought that was quite fast.



After having unpacked the unit we noticed that the bluetooth mouse and keyboard were not included. Finding a spare mouse and keyboard was not really an issue, but still, one expects to find all parts in the box.Besides that the manual includes all information needed to get the unit up and running quite fast. After half an hour we could start up the SurfaceDesk and start 'touching' the surface. We executed the short callibration because the manual states that the complete callibration has been done for each surface before shipping.

Unfortunately nothing happened when touching the surface. For some reason it did not recognize any fingers, tags not blobs. Only a complete black button seemed to trigger some kind of reaction.

In order to try to solve this, We then tried the full callibration. The procedure went quite well and reported that the callibration was succesfull. However, nothing changed in the behaviour of the surface. After having tried several things (rebooting, re-callibrating - both simple and complete) we found out that the callibration chart is covered (on both sides) with some kind of protective foil, of which it is not immediately clear that it needs to be removed. I don't know (yet) how the surface functions exactly, but my guess is that the foil makes the black squares look grey and therefor the unit doesn't callibrate correctly.

After having removed the foil (on both sides) and having executed the complete callibration with the correct callibration chart the unit is now working properly.

We now can start to play with the SDK, sample applications and write some code !

PS. We have contacted Microsoft and apparantly the mouse and keyboard are no longer shipped to Europe and Asia. The documentation does not yet reflect this change and still lists them as being in the box.

 

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , , ,

Microsoft Surface

Changing attributes values at runtime

by brogge 9. February 2009 23:11

This post adds some remarks to the excellent post of David Morton on 'Changing attribute parameters at runtime', which can be read at http://blog.davemorton.net/2008/10/changing-attribute-parameters-at.html.

I am trying to hide some properties for my object when it is loaded into the property grid. When I applied the method put forward in David's post it didn't seem to solve my problem. In fact, all properties dissappeared from the property grid.

I have done some research and found out that David his method only seems to be working when the property is actually annotated in the code. So changing the read only property did not work for the following property: 

[Category("Document template")]
[
DisplayName("Description")]
[
Description("Description of the document.")]
public override string Description
{
  
get { return base.Description; }
  
set { base.Description = value; }
}

while it did work on this version of the code:

[Category("Document template")]
[
DisplayName("Description")]
[
Description("Description of the document.")]
[Browsable(true)]
public override string Description
{
  
get { return base.Description; }
  
set { base.Description = value; }
}

When retrieving the attribute information using the following code, both produced the same result:

PropertyDescriptor namePropertyDescriptor = TypeDescriptor.GetProperties(this)["Description"];
BrowsableAttribute attrib = (BrowsableAttribute)namePropertyDescriptor.Attributes[typeof(BrowsableAttribute)];
FieldInfo isReadOnly = attrib.GetType().GetField("browsable", BindingFlags.NonPublic | BindingFlags.Instance);

However, when setting the value to for the attribute to 'false', the result was different. When using the first code snippet all properties of the object dissapeared, while the second code snippet made it work.

I don't have an exact explanation for this (yet) but will add it to this post as soon as I find one. In the meantime, annotating the code with the attribute seems to solve my problem.

Hope this helps !

Currently rated 2.0 by 1 people

  • Currently 2/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , , ,

Software development tools

by brogge 4. January 2009 23:09

As a micro-ISV we are constantly on the lookout for great, affordable tools and libraries. The following set of tools helps us to create better software for our customers.

Of  course, the skill set, experience and motiviation of the micro-ISV are extremely important when it comes down to creating a good product. But the set of tools at his disposal are in my opinion equally important for creating, deploying, maintaining and selling his products.

So here is a list of tools and libraries that have helped us creating our products:

  • RAD Controls for ASP.NET from Telerik - a set of ASP.NET that are highly customizable. Telerik provides an excellent support and knows what it takes to be a developper.
  • FinalBuilder from VSoft Technologies - an automated build tool that is easy to use and extremely powerfull.
  • Images from Shutterstock - high quality images at an affordable price.
  • Support infrastructure from Kayako - web based support environment.
  • Subversion and Tortoise - code repository and a graphical UI for accessing that repository.
  • Total Commandor - best file handling tool around.
  • SharpZipLib - C# based ZIP library
  • PDFSharp - C# based PDF library
  • RSSToolkit - RSS Toolkit
  • ...

Without these tools it would even be harder to create software as a micro-ISV.

If  you happen to know other tools that help developpers fixing the same or a different problem, please let me know. Good tools are essential to our software design process.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , , , ,

Powered by BlogEngine.NET 1.4.5.0
Theme by Mads Kristensen