如何通过DataTable将其视为JSON/XML代码



我是.NET环境的新手,并尝试编写一个简单的MVC应用程序来读取学生数据并将其显示给最终用户。我已经使用sqloledb连接到数据库,该代码在下面粘贴了。从查询获得的数据存储在类型DataTable的变量中。现在,我想以JSON输出的形式看到查询的内容结果,我对我必须创建一个新的控制器有一个最淡淡的想法。但是我无法超越这一点。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;
using System.Data;
namespace Database.model
{
public class student
{
    public int id { get; set; }
    public string name { get; set; }
    private string age { get; set; }
    public DataTable GETSQLServerData()
    {
        //Connect
        var _connectionobject = new SqlConnection();
        _connectionobject.ConnectionString = @"Provider=SQLOLEDB;Data Source=PHYSICSSQLEXPRESS;Persist Security Info=true;Initial Catalog=master;Integrated Security=True; provider = SQLOLEDB;";
        _connectionobject.Open();
        //Command
        var _commandObject = new SqlCommand();
        _commandObject.CommandText = "select * from dbo.tblStudent";
        //Execute 
        _commandObject.ExecuteReader();
        //Data
        var _dataReader = _commandObject.ExecuteReader();
        DataTable obj2 = new DataTable();
        obj2.Load(_dataReader);
        _connectionobject.Close();
        return obj2;

    }
}
}                          

如果有人能在这方面帮助我

我真的很感激

您可以将数据词对象转换为POCO对象

如何将数据词转换为ASP.NET MVC中的POCO对象?

然后将Poco对象返回浏览器。

最好的做法是创建一个可以保存学生数据并返回该类对象的类,而不是像这样的数据表。

// you student model class
public class Student
{
    // public properties of student...
}

在您的数据访问类中填充此学生对象列表,然后返回到MVC操作方法。

//then in your MVC action method 
IEnumerable<Student> students = GETSQLServerData();
return this.Json(students , JsonRequestBehavior.AllowGet);

关于您的代码的几点:

1-避免在C#代码中使用SQL语句,切换到存储 过程。

2-使用数据模型层并创建学生类来定义学生 型号。

3-使用数据ACCCESS层调用SQL存储的Proc

4-注入依赖性以避免紧密耦合的类。

希望这会有所帮助!

相关内容

  • 没有找到相关文章

最新更新