Convert a custom object to a query string
I wouldn't go the StringBuilder route, simply because you need to handle the "what if I'm at the start/end" problem. Instead, simply collect the "URL_translated" key-value pairs into an IEnumerable&lt;string&gt; and then apply string.join().

If you're working in .NET Core, Microsoft does all the lifting for you. Here's how they do it.