This answer is going to address not only Chinese names, but all unfamiliar names.
Most answers say "Just ask them!", but personally I found that to be insufficient and only marginally helpful. I have the same experience when people ask me about my own name, which many find confusing to pronounce. Repeating it back to them many times at their request does not appear to be the best way to help them remember.
Here's what works for me:
Do not try to remember sounds (what you hear). Write it down, and remember the written form instead. We are better at handling structured, abstract information than an unfamiliar amorphous sound blob.
Once you wrote it down, learn the basics of how to read the language in question, i.e. how to convert written letters to spoken sounds. This is easy with phonetic writing systems, such as Chinese pinyin, and shouldn't take more than 20-30 minutes. Once you have the knowledge, you can apply it to all Chinese names: just ask the person to write it down for you in pinyin. If you are a teacher with many Chinese students, it's a worthwhile investment of time.
The key is: (1) Remember a formalized, abstract representation. This helps with memory. (2) Learn the basic rules about how to read out this representation aloud, e.g. from Wikipedia. This provides some certainty and takes away the anxiety about "pronouncing it wrong."
Your own native language may not have all the required sounds. You may struggle with some of them. If you do, simply find a "good enough" approximation and stick to it deliberately. The purpose is to take out the anxiety from pronouncing the names. For example, if you are an English speaker and you can't roll your rs, simply substitute an English r. If you try to get that r right every time you talk to "Carlos", you may eventually find yourself avoiding saying his name.
Mandarin Chinese does not have many sounds that are especially difficult or unfamiliar to English speakers. The big one I can think of is ü, as in pinyin yu. Just ask someone to pronounce that sound for you, decide on the best approximation you can produce, and stick to it deliberately, even knowing that it is far from perfect. For xi and qi, most will naturally and easily substitute the English sh and ch. Of course, Chinese tones are also difficult, but again: skip them deliberately.
I find that this method works well for me in practice, both for remembering names or words in foreign languages. It also seems to work for helping others remember my own name. Many find its spelling intimidating, but once I explain that sz and cs are both indivisible units that represent a single sound (s from snake and ch from child, respectively), people find it much easier.
Unfortunately, in my experience, some English speakers struggle tremendously with the very concept of phonetic writing, or rather putting it into practice. Instead of consistently applying the rules of pronunciation specific to the writing system / language in question, they keep sliding back into trying to read it "the English way". They can't seem to segregate in their head two separate sets of pronunciation rules (for two languages) for the same set of symbols (Roman letters). I could never quite understand why, therefore I could never find an efficient way to help them. If you are one of them, then this might not be the best method for you. However, if you are a native speaker of a language that uses a phonetic writing system, understanding the basics of a different phonetic system will be trivial to you.
This method won't work well for a language that is usually written in Roman letters, but does not use a consistent phonetic system, such as French. In that case, you may need to make up your own phonetic representation. Languages that are not written in Roman letters usually have standard romanizations that tend to be consistent and phonetic (such as pinyin for Mandarin Chinese), so the only problem is knowing which Romanization you are dealing with, in case there are several.