我正在将一个项目升级到 Windows Azure 1.3,我遇到了在内部 Web 角色中托管 WCF 服务的问题。尝试访问服务时出现以下异常:
HTTP could not register URL http://127.0.0.1:5111/service.svc/. Your process does not have access rights to this namespace
我在使用 Azure 1.0 时确实遇到了类似的问题,并使用以下代码解决了它:
new BasicHttpBinding() { HostNameComparisonMode = HostNameComparisonMode.Exact }
对于这个新问题,似乎有一些常见的解决方案;使用上面的代码,运行 httpcfg 工具来显式更改命名空间保留,并以管理员身份运行。
据我所知,httpcfg 工具不适用于 Azure 内部 WebRole,因为端口是动态分配的。以管理员身份运行 Visual Studio 并调试 Cloud 项目也不能解决问题(Visual Studio 会启动模拟器)。
Azure Compute Emulator 似乎没有从 Visual Studio 进程继承权限。有没有人遇到过类似的问题,关于修复的任何想法,变通方法?
卡尔