2012-12-02 61 views
0

我讀過很多與此相關的文章,但還沒有找到解決方案。主機名映射到ASP.NET/WCF中的目錄

我有一組WCF服務文件(* .SVC)在ASP.NET項目

目錄「/ API」我已經指出這兩個api.mydomain.com和www.mydomain.com在運行該項目的服務器。

目前,到達的.svc文件,我要構建這樣的網址:

api.mydomain.com/api/[servicefilename].svc

理想情況下,我想找到一些變化,我可以作出的web.config,將允許使用這個網址來代替,對於相同的資源:

api.mydomain.com/[servicefilename].svc

一個約束:我不能更改到IIS配置,因爲我使用Elasticbeanstalk部署到EC2。

感謝任何幫助......

回答

0

如果您正在使用WCF 4,你甚至不需要一個SVC文件。

把東西像這樣在你的web.config

<serviceHostingEnvironment multipleSiteBindingsEnabled="true"> 
    <serviceActivations> 
     <add relativeAddress="Service.svc" service="MyService" /> 
    </serviceActivations> 
</serviceHostingEnvironment> 

到api.mydomain.com/service.svc會打電話給你的服務實現「爲MyService」

This blog post有一些更多的例子,包括任何請求使用服務主機工廠和無擴展名網址

+0

這非常有趣,但似乎沒有直接解決問題(除非我誤解)。我所追求的是一種將api。* hostname映射到項目中的/ api目錄的方法。 –

+0

@Jimmy_m有沒有理由需要通過這種方式解決您的問題?爲什麼你不能把你的svc文件放在根目錄下?我建議你根本不要使用svc文件 – EdmundYeung99

+0

如果不在svc文件中,我會在哪裏定義服務端點和行爲? –

相關問題