将asp.net连接到SQL Server并在主页上显示结果

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

我正在开发一个新的博客网站,其中的条目存储在 SQL Server 数据库中。我现在遇到的问题是将我的主页与 SQL Server 链接起来。我之前曾成功将程序连接到数据库。现在我尝试在 asp.net mvc 3 网站上使用相同的代码。

这个类我保存在models文件夹中。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;

namespace testingtesting.se.Models
{
    public class msSQL
    {
        public SqlDataReader postList()
        {
            string connectionString = "Server=;Database=;User Id=;Password= ";
            SqlConnection con = new SqlConnection(connectionString);
            con.Open();
            SqlCommand com = new SqlCommand("SELECT * FROM Post", con);
            SqlDataReader reader = com.ExecuteReader();
            return reader;
        }
    }
}

我是 asp.net mvc 3 的新手,但如果我正确理解所有内容,模型文件夹中的类会从数据库发送和接收数据,而控制器将数据发送到我现在正在尝试执行的视图。到目前为止,我已经尝试通过控制器将方法 postList 的结果发送到视图,然后视图以简洁的方式显示它。但我无法让它工作。

sql-server-2008 asp.net-mvc-3
1个回答
0
投票

所以你的控制器可能看起来像:

public ActionResult Index()
{
    msSQL mssql = new msSQL();
    return View(mssql.postList());
}

您的视图可能如下所示:

@model SqlDataReader

@while(Model.read())
{
    Model["columnName"]
}

但是,最佳实践是创建一个模型来表示您尝试从数据库中提取的数据,填充该模型,然后将此模型传递给视图,而不是将 SqlDataReader 传递给视图。

如果这没有帮助,请发布您遇到的错误/为什么它不起作用。

© www.soinside.com 2019 - 2024. All rights reserved.