我正在将 Web 应用从 Azure 云服务 Web 角色迁移到 Azure 网站。网站找不到Microsoft.WindowsAzure.ServiceRuntime
并且总体上似乎不喜欢云服务助手。
该应用程序使用RoleEnvironment.IsAvailable
在一些地方,在线行为与开发计算机上的行为不同。 (为了速度,我们在 Web 角色模拟器之外运行开发。)
是否有与 RoleEnvironment.IsAvailable
等效的属性用于确定应用程序是否在云端运行?
最佳答案
有很多方法可以区分在 Azure 网站上运行还是在开发环境中运行。
如果它是在请求的上下文中,那么我会检查主机是否为 localhost
与 mysite.com
例如。
另一个选项是检查 Azure 网站在您的站点中注入(inject)的任何环境变量。您可以在这里找到列表https://<yourSiteName>.scm.azurewebsites.net/Env
最后,您可以在 Azure 门户中为站点定义自己的 AppSetting,然后检查它是否存在以了解您正在运行的环境。
关于Azure 网站 RoleEnvironment.IsAvailable 等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28998566/