There is no way to 100% Gurantee that someone wont be able to Reverse Engineer your code. Using Dotfuscator is a good measure none the less.
Read this if you want to know how to get a correct reply for your question:
^^Took that from planoie's profile^^
^^Modified text taken from gbianchi profile^^
Technical Editor for: Professional Search Engine Optimization with ASP.NET