In the previous post we’ve got dead simple OpenID authentication working with ASP.NET WebForms application. Lets push it further and make more real world example you can actually use in your project. To make it less work, we will use Javascript OpenID selector – handy little library to display providers and handle user input. It is just two small scripts and one CSS file, very light and easy to modify if needed. More...
Let's start by creating new empty ASP.NET website and adding Default.aspx with minimal “hello world” markup. When you access your site and check it with profiler, you’ll see single get request for default page. More...
BlogEngine 2.0 is .NET 3.5 application, but you can use it with .NET framework 4.0 with little effort by compiling source code as .NET 4.0 assembly. You can do it with free Visual Web Developer Express 2010 which can be downloaded as stand alone or installed with MS web platform installer, whichever you prefer. Here is short walk through. More...
Windows Home Server is a great OS for home users, it does a lot of stuff for you and you can find many useful plug-ins if you want more. One thing that it does not do out of the box though it does not work as a web server. It might be ok for average home user, but many advanced users, not to mention developers, would love to have their home server also serve web pages and applicatons. Fortunately, under the hood it is old good Windows server 2003, and you can make it do just about anything WS 2003 can do. More...
Wrapper around standard Membership provider that ships with ASP.NET MVC 1.0 out of the box fit well common scenario for social websites with self-registration and all users treated equal. When you have more complex requirements, in portal-like style application, you are very much out of luck. Account controller that comes with MVC 1.0 has very limited user management implementation and does not go into role management at all. It would be nice to have role management implemented the same way as account management, but if you need to roll right away I’ll show you quick and dirty way of doing basic user/role management with what we have now. More...
And why they don’t take over the world. If you ever wonder about it, you probably already came up with perfectly good explanation. I’ve heard and read quite a few and agree with most of them, but still want to add my two cents. IMO, in open source there are generally two kinds of approaches. More...
Either you run your web site in the shared hosting environment or on your local IIS server, you likely have several ASP.NET applications running in the same root directory. Each of them can be configured as a separate web application and run totally independent from others. Although BlogEngine is not (yet) multi-blogging platform, you can easily run bunch of BlogEngins on the same root for number of bloggers. Lets say, you have 3 bloggers contributing to your site and you want each of them have their very own blog, then you create similar structure: More...
This post is a sequel to Keeping things private and will explain how to secure images so that only authenticated users can see them. This is relevant when you want to publish private album on the web. All image files in the web application are viewable by default, you can right-click any image to see information about it in the properties, you can load image into browser directly (just type in http://rtur.net/blog/pics/rssbutton.gif for example), you can download any image by saving it to the local drive etc. Obviously, with private albums you don’t want this kind of behavior. More...
We all know about magic App_Code folder. Just drop class file in there and it will become a part of the web application. This is fine for scripts like PHP or "classic" ASP (VB script), but C# is strongly typed compiled language. How App_Code works? As any magic, mostly smoke and mirrors. Behind the scene, ASP.NET will create App_Code.dll and merge it with main application assembly at run time. This simple trick gives us best of both worlds - dynamism of scripting languages (ok, to the point) and all the good stuff coming with strong typing and compilation (whatever they are). More...
Do you use design patterns in your daily development? You probably should, and if you don't you might start with reading some books on the subject. I would suggest one from Head First series, although not everybody is a big fan of this book. But I found it fun and easy reading that can trigger your curiosity and encourage you to dig dipper. It is written for Java developers, but language samples presented in the book are minimal and, if you don't understand Java, you can refer to this project for C# translation. More...