Azure 数据库 asp.net mvc [关闭]

Posted

技术标签:

【中文标题】Azure 数据库 asp.net mvc [关闭]【英文标题】:Azure database asp.net mvc [closed] 【发布时间】:2016-05-30 19:48:03 【问题描述】:

有我的情况: 我创建了一个 azure SQL 数据库,并且一个 MVC 解决方案女巫已连接到该数据库。我为我的应用程序创建了模型,并使用脚手架自动创建控制器和视图。它有效,我可以很好地使用这些视图!

但现在我希望以不同的方式使用我的数据库!

假设我有一个包含 3 列 Id、name、nbPeople 的表 Client。因为我使用了脚手架,在我的视图控制器中,在 index 方法下,我得到了这个函数 return View (db.Client.ToList());列出我的客户表中的所有内容。

这很好,但现在,我的问题终于来了,我该怎么做,例如,只列出名字?

我希望有人有解决方案并将其提供给我! ;)

【问题讨论】:

在 DbSet 上使用 Select:db.Client.Select(c => c.name).ToList() 我认为这是我想要的方式,但是当我尝试这样做时,我得到了这个错误:传递到字典中的模型项的类型是 'System.Collections.Generic.List 1[System .Int32]',但是这个字典需要 'System.Collections.Generic.IEnumerable`1 类型的模型项,因为索引视图使用的是@model IEnumerable 我该如何解决这个问题? 作为错误点您还需要调整视图。如果“name”属性为“int”,则在视图中设置“@model IList”。 好的,我明白了!这些天我会玩得很开心!谢谢 !还有一个问题:选择只能在一列或多列上使用? 【参考方案1】:

转到 Views 文件夹中由脚手架(例如 Index.cshtml)生成的 html 视图。您可以看到用于显示 Id 和 People 字段的 html 标记。删除那些 html 标签。因此,您的视图将仅显示名称。希望这是您想要的,只是为了显示名称列表。

【讨论】:

我已经尝试过这种方式,但这真的是一个好习惯吗?我不应该传递我想在 View 方法中显示的内容而不是“隐藏”信息吗? 理想情况下,用于在视图上显示数据的模型对象应该与数据库实体不同。您应该从数据库中获取数据并将其映射到您的模型。 好的谢谢我看的更清楚了!

以上是关于Azure 数据库 asp.net mvc [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

将带有 SQL Server 数据库的 ASP.NET MVC 应用程序发布到免费的 Azure 帐户

如何将图片存储在 asp.net mvc 应用程序的 azure blob 存储中?

在 asp.net MVC 上创建 Azure 存储表

如何使用 asp.net mvc 从 azure 获取访问令牌

从 GitHub 持续部署在 Azure 中失败(ASP.NET 5 和 MVC 6)

Azure 部署后 ASP.NET Core MVC webapp 错误