azure - 如何在没有 Visual Studio 的情况下在开发模式下在 azure 模拟器中运行应用程序

标签 azure msbuild-4.0 azure-compute-emulator

我需要一些标记和 JavaScript 人员来帮助开发团队完成 azure asp.net MVC 项目。

本质上,我需要的是每个人运行 azure 应用程序的本地实例,以便能够更改内容文件(chtml/css/js)并测试/调试它们,就像在 VisualStudio 中启动一样( Ctrl+F5)。

虽然很容易向各方提供源代码,以便每个人都有自己的工作副本 - 我们使用 svn,但我在 dev Fabric 中运行应用程序的本地副本时遇到了问题。

我不想为每个人安装 Visual Studio,因为它非常耗时,而且仅仅为了启动开发结构就太昂贵了。这些人不使用 VisualStudio 来处理 html/css/js。以及使用 SDK 提供的所有必需工具:MSBuild、Azure、WIF 等等。

我什至设法使用应用程序运行开发结构

MSBuild.exe Azure\Azure.ccproj /t:Publish
CSRun.exe Azure\csx\Debug Azure\bin\Debug\ServiceConfiguration.cscfg

一切正常,除了一件事 - 内容文件与所有二进制文件一起复制到 Azure\obj\Debug\WebRole 文件夹下。

这与 VisualStudio 构建不同 - 文件夹仅包含二进制文件,而内容文件保留在其位置。这是一种更方便的更改方式,因为文件不仅可以在保存后立即用于调试,而且还可以轻松地从源代码管理中 checkin / checkout 。

我评论了CSPack引用,并且肯定它应该允许我想要的场景,但很难弄清楚如何实现它。 我怀疑必须有一种使用 MSBuild 进行此类部署的方法(只要 VisualStudio 严重依赖它来进行所有构建/部署操作),但我似乎找不到一种方法来告诉它我想要什么。

有人知道运行 CSPack 来重复 VisualStudio 调试部署方案的正确方法,或者 MSBuild 的正确目标/参数以与 VisualStudio 相同的方式运行 azure 项目吗?

也许有办法查看 VisualStudio 构建中执行的实际命令行?

最佳答案

好吧,在深入研究 Microsoft.WindowsAzure.targets 几个小时并用手鼓跳舞之后,我发现了神奇的开关:

MSBuild.exe Azure\Azure.ccproj /p:PackageForComputeEmulator=true /p:PackageWebRole=False

这就像 VisualStudio 一样打包应用程序。请注意,azure 构建逻辑区分目标 BuildPublish,并根据是否指定了一个、另一个或两者来应用不同的规则。对于我的场景,它必须仅是Build(默认)。

关于azure - 如何在没有 Visual Studio 的情况下在开发模式下在 azure 模拟器中运行应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8245143/

相关文章:

azure - 一项流分析作业与多项作业

azure - 无法创建 AD 帐户,因为该目录是联合的 (AADB2B_0001)

msbuild - 构建没有依赖项的 MSBuild 目标

azure - 如何在本地测试在运行时更改 Azure 服务配置设置?

c# - 从本地主机外部访问 DevFabric

azure - 有两个azure应用程序服务具有相同的IP正常吗?

c# - Azure 从连接的设备/DPS 服务获取 IoTHub 连接字符串

msbuild - 如何从正在处理的项目文件中访问msbuild命令行参数?

MSBUILD : error MSB1008: Only one project can be specified in teamcity

azure - Windows Azure 计算模拟器错误