最近在自学MVC、C#语法 ,硬啃理论知识我是学不下去的,所以看了一些语法知识以后,便想着先去实现前后端交互,并为此激情满满😊。
效果如下图:(查询数据表、渲染在view视图)
一、MVC就是模型-视图-控制器。
在MVC架构下实现前后端交互,所以我需要在三个页面写代码。
其中控制器controller处理请求逻辑,视图view显示数据
《精通MVC4》原文描述:模型不涉及UI渲染或请求的处理,那些是视图和控制器的职责(不要把视图和控制器的职责放到模型中进行定义,这些不是models的职责)
二、代码
1、控制器的代码:
class Connect
{
public string str = "server=数据库地址;User Id=账号;password=密码;Database=数据库名称";
}
public ActionResult ZhuYe()
{
Connect c = new Connect(); //实例化Connect类,因为考虑到后面会经常重复输入数据库的连接信息,所以就封装起来(听说代码重复的越多,越可能出错)
MySqlConnection conn = new MySqlConnection(c.str.ToString());
conn.Open(); //打开数据库连接
try
{
string sql = "select * from user";
MySqlCommand cmd = new MySqlCommand(sql, conn); //MySqlCommand是要求数据库处于打开的状态
MySqlDataReader reader = cmd.ExecuteReader();
List<ShowData> abc = new List<ShowData>() { }; //定义一个集合
while (reader.Read()) //这个返回的是布尔值,指从reader中读取下一行数据,如果有数据,则返回ture,以此把表内每一行数据都读到
{
string id = reader["id"].ToString(); //把数据表的数据存到变量