我將我的C#控制檯應用程序遷移到Azure。我的應用程序使用HttpListener
在特定端口上偵聽http請求。當我在一個Worker角色本地試試下面的測試代碼,我(在ComputeEmulator屏幕類似的打印出來)有一個例外,他說:開始監聽時工作角色中的HttpListenerException
HttpListenerException - 「該進程無法訪問該文件,因爲它正在使用另一個過程「。
注意:我已經在服務配置文件中將端口配置爲2020。我還注意到從RoleEnvironment中檢索到的端口顯示爲2020,但它是否假設顯示不同的端口,因爲它應該重映射到與配置的外部端口號不同的端口?
// ========== Test code starts ==============
string ipAddress = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Ecard"].IPEndpoint.Address.ToString();
int port = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Ecard"].IPEndpoint.Port;
string uri = @"http://" + ipAddress + ":" + port + "/";
try
{
httpListener = new HttpListener();
httpListener.Prefixes.Add(uri);
httpListener.Start();
}
catch (Exception e)
{
Trace.WriteLine(e.Message);
}
// Test code ends.
我真的很感激你的幫助。