加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 将默认的MVC 4模板部署到Windows Azure

发布时间:2020-12-16 09:52:35 所属栏目:asp.Net 来源:网络整理
导读:我是 Windows Azure的新手,正在修补它以了解它是如何工作的.为了使事情尽可能简单,我尝试部署由VS 2012 Express for web生成的默认MVC 4模板.我创建了一个新项目 – Azure云服务.我选择了一个MVC 4网络角色.这创建了一个漂亮的小asp.net应用程序,包含home,ab
我是 Windows Azure的新手,正在修补它以了解它是如何工作的.为了使事情尽可能简单,我尝试部署由VS 2012 Express for web生成的默认MVC 4模板.我创建了一个新项目 – Azure云服务.我选择了一个MVC 4网络角色.这创建了一个漂亮的小asp.net应用程序,包含home,about和contact页面,以及注册和登录的链接.我只是想将此站点部署到Azure并看到它在云上运行.

但是,成员资格似乎不适用于azure.应用程序的页面显示正确.但是,当我点击“注册”链接时,它不会带我到一个页面来输入新的用户名和密码.我不相信任何地方都会生成成员资格表.

考虑到这是多么简单,我想我必须在某个地方犯一个愚蠢的错误.如果有人能帮助我,我真的很感激.

另外,为了记录,我注意到如果我在VS2012 Express中创建一个独立的MVC 4项目(而不是具有mvc 4 web角色的Windows Azure云服务项目),那么当我右键单击该MVC4项目并选择发布它,它允许我使用连接字符串指定sql数据库.更重要的是,一旦它发布到Azure,会员资格就完美无缺.我可以创建useraccounts并登录.如果我使用azure portal检查我的SQL Azure数据库,我可以看到在那里创建的新成员资格表.

但是当我尝试使用MVC4 webrole发布Windows Azure云服务时,我没有看到任何选项来为azure项目提供任何类型的连接字符串.也许这就是会员资格不起作用的原因……因为没有与网络角色相关联的数据库…但我无法弄清楚如何指定这一点.我的印象是将一个独立的MVC4项目发布到Azure,并发布一个带有MVC4 Web角色的Azure云服务是完全一样的,如果我错了,请纠正我.无论哪种方式,我都应该能够看到我的mvc 4 web角色的成员资格功能.

以下是重现我所拥有的步骤.基本上它都是默认的东西:

>在VS2012 Express中创建一个新项目
档案 – >新项目 – > ‘Windows Azure云服务’.
>在下一个屏幕上添加一个ASP.NET MVC 4 Web角色.
>在随后的屏幕上选择“Internet应用程序”.

这3个步骤创建了一个新项目.它在当地运行就好了.
现在我尝试把它放在云上.

>右键单击解决方案资源管理器中的windows azure项目,然后选择“发布”.
>选择订阅(我已经有证书/凭证从VS发布到azure所以我选择了)
>在下一个屏幕上创建一个云服务(我将其命名为’garyazurecloudservice’).
>接受“发布”向导中的所有默认设置,然后单击“发布”.

发布过程需要几分钟.
可以在http://garyazurecloudservice.cloudapp.net/查看Web应用程序.

Home,About和Contact页面都正确显示.但是,我单击右上角的“注册”链接,我看到一个带有正确布局模板的网页,但是红色的错误表示:
“错误.处理您的请求时出错.”

我试图在Azure上创建一个SQL数据库,但我没有看到任何方法将此角色连接到它.可能那是问题?或者它可能完全不同于其他东西.如果有人能告诉我什么是错的,我将不胜感激.

我花了一整天的谷歌搜索和圈子没有成功.感谢您提供任何帮助.
加里

解决方法

您是正确的,因为在Azure上运行时,您的网站的“成员资格”部分将无法在后台创建SQL表,因为这些表所在的位置存在问题.

请记住,Azure托管空间与传统托管不同,因为您的站点将存在于虚拟机上,如果第一个虚拟机遇到问题,则会将文件复制到另一个虚拟机.此外,如果您要调用第二个“服务器”来托管您的网站,以满足负载,会发生什么?表格会在哪里生存,第二个虚拟机如何知道如何访问第一个?

答案是创建一个SQL Azure数据库,在那里上传您的表,然后您将拥有运行您的网站的1,2或1000个“服务器”的永久位置,以访问您的数据的中央数据库存储库.

我知道在你的例子中,它应该只是’工作’并且我在某种程度上同意,但是你的本地机器或你现有的(传统)web主机上运行的应用程序与Azure工作模型完全不同.

关于SQL Azure设置如何工作的问题,大概你是通过门户网站,通过www.windowsazure.com网站创建的?如果是这样,那么您应该能够从那里查看和管理SQL Azure数据库,包括获取对Connection Strings部分的访问权限,您可以将这些数据复制并粘贴到MVC4应用程序的web.config文件中.从那里,你可以使用这个数据库,就像你可以使用任何其他数据库一样.

我希望这一切都有所帮助 – Azure曾经被驯服过的美丽野兽.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读