2012-03-22 87 views
1

我工作在Windows Azure网站下面的教程时错误:
https://www.windowsazure.com/en-us/develop/net/tutorials/web-app-with-sql-azure/ASP.NET MVC Web应用程序 - 部署到生产

(也:去到windowsazure.com,点击“开发”标题,在“创建你的第一个应用程序”下的语言下点击“.Net” - 点击ASP.NET MVC Web应用程序与SQL Azure)

我可以运行我的开发机器上的Windows Azure仿真环境中的应用程序。如果我将连接字符串更改为生产数据库,应用程序在本地开发环境中工作

但是,当我将应用程序部署到Azure时,出现错误消息:“对不起,处理您的请求时发生错误。”这显示在一个呈现的页面中,所以我认为请求正在进入ASP.NET。

我相信我遇到的问题是允许Azure上的生产应用程序连接到SQL Azure数据库。

我认为这是一个防火墙问题,但一直未能确定什么IP范围需要。 (我以前认为这个问题会在32位环境中运行VS 2010,Windows Azure是64位环境,但我们从64位环境部署了示例应用程序,并且具有相同的问题)。有关更多详细信息,这里是我之前在MSDN上发布的关于同一问题的上一个问题:http://social.msdn.microsoft.com/Forums/en-US/windowsazuretroubleshooting/thread/23afb5e3-e2ee-4444-aabb-7001ae6c6e6a/#af5284c0-ef4b-4193-b912-d4b7adfb5d21

感谢您提供任何帮助。我真的希望这个示例应用程序工作!

+0

你有没有尝试'通过'来获得错误描述? – veblock 2012-03-22 20:47:09

回答

0

enter image description here正如@veblock所示,您可以尝试关闭自定义错误以查看实际错误。

同时,所求的启用防火墙规则,为你的角色的“IP地址范围”只是一个复选框远:

你只需要检查“允许其他Windows Azure服务访问此服务器”复选框。将自动添加IP范围为“0.0.0.0 - 0.0.0.0”的条目“Microsoft Services”。这是一个内部条目,Microsoft会跟踪他们自己的IP范围,以便任何Windows Azure数据中心都能够访问此SQL Azure服务器。

但是,是的,您也可以通过远程桌面到实例或禁用自定义错误来检查真实的错误消息。 ASP.NET MVC还没有完全安装在Azure实例中的可能性很小。通过右键单击Web应用程序项目并选择“添加可部署的依赖项”,然后选择ASP.NET MVC,消除此问题的最简单方法是。

1

更新:得到了指导不同的计算机和新的64位配置,指向不同的数据中心的教程。

我在一台装有64位Windows 7 Home Premium的新笔记本电脑上安装了Visual Studio Developer 2010 Express,并安装了所有最新的Azure和MVC SDK。看起来像我认为的防火墙问题,可能是北中央数据中心数据库连接问题。 (我在猜测,而且仍然需要根据南中央数据中心测试我的原始配置,看看实际情况是否如此。但是,朝鲜中央数据中心并不是举办一个SQL Azure数据库(3个月的订阅)的可用选项,并在这里对这个讨论的链接在另一个线程:

http://social.msdn.microsoft.com/Forums/da-DK/ssdsgetstarted/thread/7b181eef-ccd1-4090-80d1-0853059d166f

正如上面提到的,需要选中“允许其他Windows Azure服务访问此服务器”复选框,并且服务和数据库都需要位于同一个Windows Azure数据中心中。

0

谢谢您的帮助。我也遇到了这个问题,并花了几个小时来调试正在进行的一切,因为在Emulator中按照预期工作,但在生产中不起作用。将我的托管服务和数据库服务器移到同一区域后,问题就消失了。

在原来的样品,也有人指出,重要的是要确保两者在同一个区域,但它提到,由于只有性能方面的原因,但对我来说它不会在所有的工作。

“ 重要:。选择您之前选择在部署应用程序时,这会给你最好的表现在同一区域 ”