如何使用MVC asp.net从视图中的数据库中检索数据

问题描述 投票:0回答:1

我想使用mvc asp.net在模式弹出窗口中从数据库检索数据。

这是我在控制器中的代码:

            string mainconn = ConfigurationManager.ConnectionStrings["MyDbConnection"].ConnectionString;
            NpgsqlConnection npgsqlConnection = new NpgsqlConnection(mainconn);
            npgsqlConnection.ConnectionString = "Server = localhost; Port = 5432; User Id = xxxxx; Password = xxxxxx; Database = xxxxxx";
            npgsqlConnection.Open();

            NpgsqlCommand command = new NpgsqlCommand("Select chart_id, chart_name, Chart_Scale from tblchartmaster", npgsqlConnection);
            NpgsqlDataReader dataReader = command.ExecuteReader();

            DataTable data = new DataTable();
            data.Load(dataReader);
            return View();

And here is the code in the View:

<body>
    @*<asp:button onclick="submit" text="Submit" runat="server" />*@
    <input type="button" value="Submit" data-toggle="modal" data-target="#myModal" />
    <h2>Map</h2>
    <div id="map" class="map"></div>   

        <!-- The Modal -->
        <div class="modal" id="myModal">
            <div class="modal-dialog">
                <div class="modal-content">

                    <!-- Modal Header -->
                    <div class="modal-header">
                        <h4 class="modal-title">Chart List</h4>
                        <button type="button" class="close" data-dismiss="modal">&times;</button>
                    </div>
                    <!-- Modal body -->
                    <div class="modal-body">
                        <table border="1">
                                <thead>
                                    <tr>
                                        <td>Select</td>
                                        <td>Chart Name</td>
                                        <td>Chart ID</td>
                                        <td>Chart Scale</td>
                                    </tr>
                                </thead>
                               </table>                             
                       </script>
                      </body>
                     </html>

但是我无法获取数据库数据。我的代码正确吗?请有人帮我找出解决方案。

asp.net-mvc
1个回答
0
投票

您没有将数据从控制器发送到视图。假设您已将数据加载到data对象中:

data.Load(dataReader);
return View();

以ViewModel或在ViewBag或ViewData中发送数据:

ViewData:

ViewData["MyData"] = data; 

ViewBag:

ViewBag.MyData= data;
© www.soinside.com 2019 - 2024. All rights reserved.