Você está fazendo duas perguntas, como fazer isso e como roteirizar o que deseja fazer.
Eu não sei se é possível de sair da caixa, mas uma solução é usar o módulo IIS UrlRewrite , isso é muito útil para todos os tipos de coisas, então acho que é uma boa ideia tê-lo de qualquer maneira.
Crie uma nova regra que corresponda a todas as solicitações que você deseja tratar. No seu caso, path/service.svc/whatever/path
, você pode usar expressões regulares para atender às suas solicitações. Use uma resposta personalizada e envie seu próprio código de status. No web.config você deve ter uma seção como esta:
<rewrite>
<rules>
<rule name="Json Redirect" stopProcessing="true">
<match url="path/service.svc/whatever/path" />
<action type="CustomResponse" statusCode="555" subStatusCode="0" statusReason="Nothing to see here" statusDescription="Temporary static json..." />
</rule>
</rules>
</rewrite>
Se você fizer isso, receberá o código de erro, mas não o seu json estático. Adicione uma nova entrada em system.webServer-httpErrors no web.config:
<error statusCode="555" subStatusCode="0" path="temp.json" responseMode="File" />
O responseMode = file significa que a localização do arquivo estático é relativa à sua raiz da web, no caso acima à direita na raiz do seu site.
Agora você precisa corrigir o tipo de conteúdo, adicionar uma entrada em system.webServer-staticContent no seu web.config:
<mimeMap fileExtension=".json" mimeType="text/json" />
Ao testar isso localmente, você ainda pode obter uma página de erro do IIS, mas chamando-a remotamente, deve funcionar.
Você pode fazer todas essas alterações na interface do usuário do gerenciador do IIS, mas se quiser gerá-las, consulte o Cmdlets IIS do PowerShell .