创建用于检索 Json 格式数据的构造函数

本文关键字:数据 构造函数 格式 Json 用于 检索 创建 | 更新日期: 2023-09-27 18:30:22

我试图使它更有条理,由于某种原因,我无法考虑如何在没有控制器准备数据的情况下做到这一点。

我一直觉得让

模型为我准备是更好的做法。

我怎样才能做到这一点?

课程控制员:

public class CoursesController : Controller
{
    private readonly CourseVmContext db = new CourseVmContext();
    public ActionResult Index()
    {
        var Data = db.CourseVms.ToList().AsEnumerable();
        var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
        string JsonData = serializer.Serialize(Data);
        return View(JsonData);
    }
}

课程视图模型:

    public class CourseVm
{
    [Key]
    public int CourseId { get; set; }
    public string Course { get; set; }
    public string Name { get; set; }
    public string Instructor { get; set; }
}
public class CourseVmContext : DbContext
{
    public CourseVmContext()
    {
        this.Database.Connection.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;
    }
    public DbSet<CourseVm> CourseVms { get; set; }  
}

干杯!

创建用于检索 Json 格式数据的构造函数

根据您在评论中发布的片段:

registrationModule.factory("bootstrappedCourses", function() {
            return {
                courses: @Model
            };
        });

似乎您正在绕过angularjs的 ajax 功能。

无论如何,如果您决定继续这样做,您只需要一个string类型的模型(您在控制器中所做的)

在您看来,您需要调用angular.fromJson()方法

registrationModule.factory("bootstrappedCourses", function() {
            return {
                courses: angular.fromJson("@Model")
            };
        });

我强烈建议您使用其他方式,例如JsonResult控制器和 Angular 的 $http 模块 - 阅读本教程