I am working on an object encryption class. I have everything worked out but I want to be able to encrypt/decrypt any object type with one deserialize method. As of now the only
You need to simply utilize the type parameter of your class.
By trying to dynamically do a GetType or a cast, you're forcing a runtime evaluation, rather than using generics to create a compile-time referenced version.
The type parameter will compile a separate version of your class that is strongly typed for every parameter type T that is encounted by the compiler. So T is actually a placeholder for a strong reference.
obj = (br.Deserialize(ms) as T);