Я заметил, что у используемых вами URL-адресов есть / а не? что заставляет элементы обрабатываться как путь, а не строка запроса.
Если это было задумано и вы используете .NET 4.0, вы можете попробовать использовать элемент <schemeSettings>
(настройки Uri) в конфигурации:
<uri>
<schemeSettings>
<add name="http" genericUriParserOptions="DontUnescapePathDotsAndSlashes" />
</schemeSettings>
</uri>
См. Перечисление GenericUriParserOptions для правильных значений.
Если это не было предназначено, обновите ваш шаблон, чтобы использовать? отметьте, и вы должны быть в порядке:
[WebGet(UriTemplate = "?username={username}&lat={lat}&lng={lng}")]