I also use smartassembly. However, I don't know how it works for a web application. However, I'd like to point out that if your app uses shareware type protection, make sure it don't check a license with a boolean return. it's too easy to byte crack.
http://blogs.compdj.com/post/Binary-hack-a-NET-executable.aspx