asp.net - 我可以将 Web 形式的 ASP.NET Web 应用程序部署到云吗?

标签 asp.net .net web-applications azure cloud

我知道这样的问题已经被问过很多次了,但我在这里提出了我的场景。请不要删除或投票关闭。

  1. 我有一个以 L2S 和 SQL 2008 R2 作为后端的 asp.net 应用程序
  2. 使用 N 层架构
  3. 主要执行正常的增删改查操作。
  4. session 和 View 状态的使用
  5. 手动登录/注销(用户和角色管理),未使用 .net 成员(member)资格。
  6. 尚未使用任何服务,可能是稍后的部分。
  7. Telerik 或 Infragistics 等第三方控件也在使用中。

我想知道:

  1. 我需要将整个应用程序更改为 Azure Web 应用程序吗?
  2. 如果没有,是否可以像我们通常在 IIS 中那样直接在云端、MS 或任何其他平台上部署它?
  3. 如果没有,是否有任何第三方迁移工具可以使我的普通旧 Web 应用程序与云兼容,而不影响现有代码?

我想要具有成本效益且易于执行的步骤?

提前致谢

最佳答案

是的,这应该是可能的。您几乎肯定不需要更改整个应用程序。

  • Linq2SQL 很好,我使用 L2S 运行 Azure 站点没有任何问题
  • 您必须将数据库部署到 SQL Azure 数据库。有一些限制,例如所有表都必须有主键。更大的列表在这里:http://msdn.microsoft.com/en-us/library/windowsazure/ee336245.aspx .
    另外,在生成 SQL 脚本时,请务必选择 SQL Azure 作为数据库引擎类型: http://mooneyblog.mmdbsolutions.com/index.php/2011/09/22/generating-azure-friendly-sql-scripts/
  • 你的 N 层是什么样的?如果它们是 DLL,那就没问题了。如果它们是 Web 服务,您需要为它们创建 Web 角色。如果它们是 Windows 服务,您需要将它们移植到辅助角色。
  • 大多数 CRUD 和 View 状态以及手动身份验证代码都可以
  • 对于 session ,这取决于您正在做什么(内存与数据库)。但您将面临与部署到任何网络场时相同的挑战
  • 对于 Telerik 来说,我确信他们必须对 Azure 提供一些支持,而且我认为他们不会做任何对 Azure 不起作用的疯狂事情。您应该查看他们的网站以验证兼容性。
  • 此外,请确保您不会在任何地方写入硬盘驱动器并期望它稍后再出现,因为实例可以随时启动、停止和重新镜像。如果您这样做,则需要将其更改为使用其他内容,例如 blob 存储。

我正在撰写一系列博客文章,介绍其中的一些步骤,这应该会有所帮助:http://mooneyblog.mmdbsolutions.com/index.php/category/azure/

祝你好运!

关于asp.net - 我可以将 Web 形式的 ASP.NET Web 应用程序部署到云吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16145702/

相关文章:

ASP.NET RegularExpressionValidator,验证不匹配项?

c# - OWIN app.use vs app.run vs app.map

c# - C# 中的文本框输入是否可以限制为格式化类型?

c# - 如何优雅地停止 System.Threading.Timer?

java - 托管多个静态文件的最佳实践

security - 有哪些理由不使用 OpenID?

asp.net - MVC2 中的简单 DropDownListFor?

c# - SaveChanges 后如何从数据库更新缓存的 EF?

c# - StringComparison.InvariantCultureIgnoreCase 有快捷方式吗?

javascript - 移动 Web 应用程序未正确清除缓存