成功将我的云服务升级到新的"Azure SDK for .NET 2.5.1 "后,我在尝试打包/发布时遇到以下错误.
无法加载文件或程序集"Microsoft.WindowsAzure.Packaging,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"或其依赖项之一.该系统找不到指定的文件.C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v12.0\Windows Azure Tools\2.5\Microsoft.WindowsAzure.targets
"Microsoft.WindowsAzure.targets"配置文件中的相关行是2930,这显然与CSPack有关.
<CSPack
ServiceDefinitionFile="@(TargetServiceDefinition)"
Output="@(PublishServicePackage)"
PackRoles="@(Roles)"
SiteMapping="@(SiteMapping)"
RoleProperties="@(RoleProperties)"
ImportedModules="@(ImportedModules)"
CopyOnly="false"
>
</CSPack>
Run Code Online (Sandbox Code Playgroud)
因此,我继续在一个全新的项目中创建一个全新的Azure云服务,以查看升级是否出现问题.不幸的是问题仍然存在.
有没有解决方法或者我必须回滚到v2.4(这会给我带来很大的痛苦)
我在VS 2013更新4上运行.
azure azure-deployment azure-sdk-.net visual-studio-2013 azure-cloud-services
服务运行时中是否有任何地方可以告诉我当前是否正在运行'Staging'或'Production'?手动修改配置到生产和生产似乎有点麻烦.
我正在处理一些与性能相关的任务,并使用新的遗物进行诊断.
这就是我所拥有的

我想知道是否有可能改进ExecuteRequestHandler部分?任何帮助将不胜感激.
谢谢!
我正在开发一个ASP.NET MVC 4网站.与MVC控制器一起,我有一个API控制器,它包含一个ajax GET API接口.当使用visual studio在本地调试时,它可以很好地工作.
但是,在我将其部署为Azure网站后,MVC控制器工作,但API控制器不再起作用.当jQuery代码尝试访问它时,它会返回如下响应:
未找到与请求URI" http://example.com " 匹配的HTTP资源.
看起来至少路线有效(否则,返回另一个404响应体).
此外,我还有另一个纯MVC 4 Web API服务部署为Azure云服务.它完美地运作.因此,我想知道是什么原因导致MVC网站内的API失败?谢谢!
.net http-status-code-404 asp.net-mvc-4 asp.net-web-api azure-cloud-services
我目前在Azure中有一个应用程序,每当我们将它推入Staging段时,由于连接字符串指向prod数据库,我们无法真正测试.
有人向我提到,您应该能够在(而非)web.config文件中设置ServiceConfiguration.cscfg文件中的连接字符串.这样,您可以更改Azure门户中的连接字符串,而不是重新发布who app.
有谁知道如何做到这一点?
connection-string web-config azure azure-configuration azure-cloud-services
错误:"为部署选择的OS*中没有上载软件包所需的名为NetFx46的功能."
我希望在Azure中构建一个应用程序,它将充当TCP侦听器,在指定端口上接收TCP消息流,然后将信息添加到数据库.传入的TCP通信将使用证书进行保护.
我正在考虑以下选项:
云服务工作者角色
这看起来肯定会起作用.但是,这意味着我必须使用Cloud Service,而我错过了App Service提供的功能和简单性.Cloud Service 文档还专门描述了如何打开所需的TCP端口.
应用服务
在逻辑应用程序(首选)中,但这似乎本身不支持TCP侦听器,因此我希望构建一个自定义API应用程序.或者,我可以创建一个Web作业.
但是我不确定这种方法是否有效,我有以下问题:
我可以在Azure应用服务中托管TCP侦听器吗?
tcp azure azure-cloud-services azure-webjobs azure-logic-apps
我获得了一个包含4个辅助角色的Cloud Service部署,其中一个角色启用了自动扩展.一旦发生自动缩放,所有角色的所有实例都将进行回收.
理想情况下,我想停止回收角色,或者至少以受控方式终止所有其他角色的工作.
我发现,您可以对RoleEnvironment.Changing事件做出反应并取消它以请求正常关闭(即调用OnStop).但是,通过向Changing事件处理程序添加跟踪输出,我注意到Changing事件显然甚至没有被触发,因此取消也没有被注册.
private void RoleEnvironmentChanging(object sender, RoleEnvironmentChangingEventArgs e)
{
// This tracing output does not show up in the logs table.
Trace.TraceInformation("RoleEnvironmentChanging event fired.");
if ((e.Changes.Any(change => change is RoleEnvironmentConfigurationSettingChange)))
{
// This one neither.
Trace.TraceInformation("One of the changes is a RoleEnvironmentConfigurationSettingChange. Cancelling..");
e.Cancel = true;
}
if ((e.Changes.Any(change => change is RoleEnvironmentTopologyChange)))
{
// This one neither.
Trace.TraceInformation("One of the changes is a RoleEnvironmentTopologyChange. Cancelling.");
e.Cancel = true;
}
}
public override bool OnStart()
{ …Run Code Online (Sandbox Code Playgroud) 我在代码中有条件,我需要检查当前环境是否不是local.i已经使用过 !RoleEnvironment.IsEmulated,现在这在Azure功能中不起作用,但在云服务中有效.相同的代码也在云服务中共享,因此解决方案应该与云服务和天蓝色功能一起使用.
我如何检查当前环境是否未托管/部署?
有没有办法可以将Git用作代码存储库,还可以用于构建和持续部署到Azure(云服务,而不是网站)?我怀疑没有给出缺少的构建环境,除非在写完之前要确认这一点.
从理论上讲,我可以看到让Git托管在同时进行构建和部署的Windows服务器上 - 不确定是否有人将其减少到实践中.
azure ×8
.net ×2
c# ×2
.net-4.6 ×1
git ×1
iis-7.5 ×1
newrelic ×1
performance ×1
tcp ×1
web-config ×1