5

我有一个使用 Azure 存储并已成功部署到 Azure 的 ASP.NET MVC 项目。但是,在本地运行项目时,它不会启动 Azure 模拟器。

我发现启动 Azure 模拟器的唯一方法是创建一个“Windows Azure 云服务”快捷方式并手动运行它。

有没有办法确保 Azure 模拟器在我启动我的应用程序时运行?

4

2 回答 2

3

我在与我的 MVC 站点相同的项目中有一个云服务。由于您已经创建了 MVC 项目,请尝试一下...

  1. 将新的 Cloud 项目添加到您的解决方案中。添加时不要选择任何角色。
  2. 添加云项目后,右键单击角色并选择...
    • 添加“解决方案中的Web角色项目...”您将能够选择您的MVC项目。
  3. 最后但同样重要的是,将 Cloud 项目设置为启动项目,它将在本地运行时启动相应的计算和存储模拟器。

我刚刚在 VS2012 中验证了这一点,我已经做了几个月了。

于 2013-02-05T19:00:54.827 回答
0

如果您的解决方案中没有云服务项目,这可能会很棘手。你可以做几件事:

  1. 计算机启动时启动存储模拟器。
  2. 看看当你用云服务启动一个项目时 VS 是怎么做的。
  3. 开始调试应用程序时,在代码中启动存储模拟器。您可以做的是使用类似这样的代码在 Application_Start() 方法中启动存储模拟器进程[这显然是一个 hack,并且不确定是一个优雅的 :)]:

            protected void Application_Start()
            {
                AreaRegistration.RegisterAllAreas();
                WebApiConfig.Register(GlobalConfiguration.Configuration);
                FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
                RouteConfig.RegisterRoutes(RouteTable.Routes);
                BundleConfig.RegisterBundles(BundleTable.Bundles);
    #if (DEBUG)
                {
                    Process.Start(@"C:\Program Files\Microsoft SDKs\Windows Azure\Emulator\devstore\DSServiceLDB.exe");
    
                }
    #endif
            }
    

我的猜测是,你需要以管理员身份运行 VS。我尝试了上面的代码,它运行良好。上面的代码假设您的存储模拟器使用 LocalDB 进行存储。

于 2013-02-06T04:55:49.657 回答