Scripts和Style

14-ASP.NET MVC中使用Json

MVC框架已经帮我们封装好了使用json的功能

很多前端的框架都是使用了json

下面我们来把一个对象以jsonresult的方式返回来,然后再url中,我可以看到浏览器可以把它解析为一个json对象。

easyui 和一些jquery框架目前都是使用json作为数据源的。

控制器代码

public JsonResult LoadData()
        {
            List<Notic> list = new List<Notic>();

            for (int i = 0; i < 20; i++)
            {
                var notic = new Notic();
                notic.AfTime = DateTime.Now;
                notic.EffTime = DateTime.Now;
                notic.Title = "FoxDevelop";
                list.Add(notic);
            }


            return Json(list, JsonRequestBehavior.AllowGet);
        }Code language: PHP (php)

15-MVC中对权限的控制

大型的MVC权限管理,需要用到mvc的过滤器,然后对访问者的权限进行对比判断。然后会分得更细。

我们这里是将MVC提供的权限控制。

通常我们要限制某个控制器或者控制器里面的某个action需要含有某个角色才能访问,那么这个时候,我们就可以给这个控制器或者action添加一个标注

[Authorize(Roles = "admin")]Code language: JSON / JSON with Comments (json)

这样只要有admin这个角色的用户才能访问这个控制器下面的action或者某个action

如果没有的话,那么就会调整到

16-Scripts.Render和Style.Render的使用

这两个方法是用来在视图中加载一些js或者css到视图中。

通常我们需要先注册规则。

在Application_Start中我们注册

BundleConfig.RegisterBundles(BundleTable.Bundles);Code language: CSS (css)

然后我们注册需要的规则

假设我们现在需要引入一些js

这些js有一定的规则比如

jbamn.ok.js

jbamn.yes.js

jbamn.no.js

还有引入一下css

bamn.haha.css

bamn.front.css

那么我们可以添加注册规则

bundles.Add(new ScriptBundle("~/bundles/bamn").Include(
                      "~/Scripts/jbamn.ok.js",
                      "~/Scripts/jbamn.yes.js","~/Scripts/jbamn.front.js"));

            bundles.Add(new StyleBundle("~/Content/css/bamn").Include(
                      "~/Content/bamn.ok.css",
                      "~/Content/bamn.front.css"));Code language: PHP (php)

通常为了区别。js通常都是”~/bundles/xxxx”

其实向我们这里的js是有规则的所以,我们完全可以这样写

bundles.Add(new ScriptBundle("~/bundles/bamn").Include(
                        "~/Scripts/jbamn.*"));Code language: PHP (php)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注