Просто проверьте запрос DTO, чтобы увидеть, какие поля заполнены, т.е.
if (request.applicationId != null && request.countername != null) #2
if (request.userId != null && request.countername != null) #4
if (request.applicationId != null) #1
if (request.userid != null) #3
Также обратите внимание, что пользователь может также заполнить запрос dto строкой запроса, т. Е. Если они вызвали вас:
/perfmon/application/1/countername?userId=2
Тогда все поля будут заполнены. Наконец, вы можете получить информацию о Запросе, используя Абсолютный URI, используемый для вызова запроса:
base.RequestContext.AbsoluteUri
Наконец, вы можете получить сам объект IHttpRequest с помощью:
var httpReq = base.Request; //or with base.RequestContext.Get<IHttpRequest>();