Crea un codice hash di due numeri

Sto cercando di creare una funzione hash rapida per una class numerica complessa (a + b) in C #.

Ho visto ripetutamente il a.GetHashcode()^b.GetHashCode() . Ma questo darà lo stesso codice hash per (a,b) e (b,a) .

Ci sono degli algoritmi standard per fare questo e ci sono delle funzioni nel framework .Net per aiutare?