Yesterday, I implemented Facebook Like button on BlogEngineDotNet. I actually added the code in PostView.aspx file in themes folder of blogEngine.
This control is used to show up the complete post as well as the post snapshots.

But when I ran the application, the facebook like button was correctly shown on all posts but when clicked, it always took note of the current page's URL.
This is a problem since your default BlogEngineDotNet or the category list page would have more than one post but the like button would only store the URL of the default or category page.
The solution to pass the respective post's URL to the facebook like button is to specify the URL at runtime using the following code:

The above code will associate each facebook like button instance with the respective post's URL.
- The href attribute of fb:like tag is used to specify the custom URL to be specified for Like button.
- href attribute is optional. If you do not specify it as would have most likely happened with you, it will pick up the current page's URL.
- Here we have to use the Post.Relative URL property of blogEngine's post class to get the post URL and prefix the SITE address. This is important as we need to specify full URL of the post while using like button.