.net mvc(一)将数据库提取出来显示在网页

默认已经连接数据库,数据库实体名称是:MusicStoreBD.cs

一、实例化数据库

①在项目文件夹下的Controller中创建新控制器MusicStore(可选操作)
②实例化:MusicStoreBD ms = new MusicStoreBD();

MusicStoreBD ms = new MusicStoreBD();

二、添加操作

①提取数据
②显示数据

public ActionResult Index()
        {
            var musiclist = from i in ms.MusicInfo select i;
            //LinQ语句,从数据库中提取数据
            //MusicInfo是一张表
            return View(musiclist.ToList());
            //执行ToList()操作,列表
        }

注:MusicStore控制器的完整代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MusicStore.Models;
namespace MusicStore.Controllers
{
    public class StoreController : Controller
    {
        // GET: Store
        MusicStoreBD ms = new MusicStoreBD();
        public ActionResult Index()
        {
            var musiclist = from i in ms.MusicInfo select i;
            //LinQ语句,从数据库中提取数据
            //MusicInfo是一张表
            return View(musiclist.ToList());
            //执行ToList()操作,列表
        }
    }
}

三、添加视图
①右键单击:Index(),选择“添加视图”选项
在这里插入图片描述
这是添加视图后自动倒转到的Index视图
下面我们为页面添加数据。
四、显示数据库里面的数据
我们刚才使用ToList()方法,把musiclist强制转换成立列表,下载我们就要用mysiclist来显示数据。
①使用强类型视图,把表转换可枚举的,也就是把数据一个个显示出来。

@model IEnumerable<MusicStore.Models.MusicInfo>

②把数据显示出来
我们在这里使用foreach循环。
举例:把MusicStore的MusicID,即编号显示出来
代码:
在这里插入图片描述
怎么看效果?右键单击:在浏览器中查看 或者 CTRL+shift+W
效果如下:
在这里插入图片描述
③完整提取出数据:

@model IEnumerable<MusicStore.Models.MusicInfo>
@{
    ViewBag.Title = "Index";
}

<h1>我的音乐情况</h1><br /><br/>

<table class="table">
    <tr>
        <th>编号</th>
        <th>名称</th>
        <th>时间</th>
        <th>价格</th>
        <th>评级</th>
    </tr>
    <tbody id="userlist">
        @foreach (var item in Model)
        {
            <tr>
                <td>
                    @item.MusicID
                </td>
                <td>
                    @item.MusicName
                </td>
                <td>
                    @item.MusicCreateTime
                </td>
                <td>
                    @item.MusicPrice
                </td>
                <td>
                    @item.MusicLevel
                </td>
            </tr>
        }
    </tbody>
</table>

效果如下:
在这里插入图片描述

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,您需要安装Oracle 数据库的驱动程序。您可以从Oracle官下载适用于您的操作系统的驱动程序,然后将其安装在计算机上。 然后,您需要在ASP.NET MVC项目中添加对Oracle数据库的引用。您可以使用NuGet包管理器来安装Oracle.DataAccess NuGet包。 接下来,您需要在Web.config文件中添加连接字符串。以下是一个示例连接字符串: ```xml <connectionStrings> <add name="OracleConnectionString" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XE)));User ID=yourusername;Password=yourpassword;" providerName="Oracle.DataAccess.Client" /> </connectionStrings> ``` 在上面的连接字符串中,您需要将 `yourusername` 和 `yourpassword` 替换为您的Oracle数据库用户名和密码。 现在,您可以在控制器中编写代码来查询数据库并将结果显示在视图中。以下是一个示例控制器: ```csharp public class HomeController : Controller { public ActionResult Index() { string connectionString = ConfigurationManager.ConnectionStrings["OracleConnectionString"].ConnectionString; OracleConnection connection = new OracleConnection(connectionString); connection.Open(); OracleCommand command = new OracleCommand("SELECT * FROM mytable", connection); OracleDataReader reader = command.ExecuteReader(); List<MyModel> myModels = new List<MyModel>(); while (reader.Read()) { MyModel myModel = new MyModel(); myModel.Id = reader.GetInt32(0); myModel.Name = reader.GetString(1); myModels.Add(myModel); } connection.Close(); return View(myModels); } } ``` 在上面的示例中,我们使用OracleConnection对象打开连接,并创建一个OracleCommand对象来执行查询。然后,我们使用OracleDataReader对象读取查询结果,并将其存储在MyModel对象的List中。最后,我们将这个List传递给视图。 在视图中,您可以使用Razor语法来循环遍历MyModel对象的列表,并将其显示网页上。以下是一个示例视图: ```html @model List<MyModel> <table> <tr> <th>Id</th> <th>Name</th> </tr> @foreach (var item in Model) { <tr> <td>@item.Id</td> <td>@item.Name</td> </tr> } </table> ``` 在上面的视图中,我们使用Razor语法循环遍历MyModel对象的列表,并将其显示在一个HTML表格中。 希望这可以帮助您开始使用ASP.NET MVC连接Oracle数据库,并将查询结果显示网页上。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值