In this article on MSDN, Aaron Skonnard and Dan Sullivan show how to extend ASP.NET to support schema validation of SOAP messages. They go much farther than most people would think to go. Very nice work.
I actually needed something like this a few months ago… to bad this hadn’t been written yet. I ended up using the XmlElement parameter trick and then performed the validation myself.