WebApi概要
  1. Global文件的作用:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            //1.注册区域路由
            AreaRegistration.RegisterAllAreas();
            //2.注册webApi的路由
            WebApiConfig.Register(GlobalConfiguration.Configuration);
            //3.注册全局过滤器
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            //4.注册网站路由
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            //5.优化js、cs
            BundleConfig.RegisterBundles(BundleTable.Bundles);
        }
    }
  2. WebApi特点

    1. 类必须继承ApiController

    2. 返回类型不再是ActionResult

    3. 默认是请求WebApi控制器中的和HttpMethod同名的方法

  3. 设置当前WebApi的默认返回格式为json--移除xml格式

    1. config.Formatters.Remove(config.Formatters.XmlFormatter);

  4. 网站访问WebApi,要提供相应的url接口

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    //http://localhost:4221/api/values/getpiglist
    protected void Page_Load(object sender, EventArgs e)
    {
        //1.拼装要请求数据的url
        string url = "http://localhost:4221/api/values/getpiglist";
        //2.利用C#模拟浏览器发出请求
        WebRequest request = WebRequest.Create(url);
        //2.1设置请求方式,如果不设置则默认为get
        request.Method = "get";
        //3.获取响应报文
        WebResponse response = request.GetResponse();
        //4.获取相应报文体的字节数据byte[]
        System.IO.Stream responseBody = response.GetResponseStream();
        //5.将字节数据转换为字符串
        using(StreamReader sr=new StreamReader(responseBody))
        {
            //5.1将相应报文体转换为json字符串
            string responseBodyText = sr.ReadToEnd();
            //5.2利用json序列化器将json字符串反序列化为list集合
            System.Web.Script.Serialization.JavaScriptSerializer jss = new System.Web.Script.Serialization.JavaScriptSerializer();
            List<Entity> list = jss.Deserialize(responseBodyText, typeof(List<Entity>)) as List<Entity>;
            GridView1.DataSource = list;
            GridView1.DataBind();
        }
  5. 动态页面转静态

     private void MakeStaticPage(string url)
    {
    string txtHtml = "";
    string fileName = Guid.NewGuid().ToString() + ".html";
    //1.C#模拟浏览器发出请求
    WebRequest Request = WebRequest.Create(url);
    //2.获取Response对象
    WebResponse response = Request.GetResponse();
    //3.根据响应报文获取字节流
    Stream stream = response.GetResponseStream();
    //4.字节流转换为html文本,并存储到相应文本中
    using (StreamReader sr = new StreamReader(stream))
    {
    txtHtml = sr.ReadToEnd();
    File.WriteAllText(Server.MapPath("/staticPage/" + fileName), txtHtml);
    }
    Response.Write("<script>alert('静态化成功 !');</script>");
    }

三、MVC插件系统

WebApi个人理解概要的更多相关文章

  1. webform 中使用ajax

    常用的方式有 js –> WebService  , js->*.ashx, js->WebAPI, js->MVC Controller->Action. 前两种就不说 ...

  2. 《转》深入理解Activity启动流程(一)–Activity启动的概要流程

    本文原创作者:Cloud Chou. 原文地址:http://www.cloudchou.com/android/post-788.html Android中启动某个Activity,将先启动Acti ...

  3. Web API与AJAX:理解FormBody和 FormUri的WebAPI中的属性

    这是这一系列文章"与 AJAX 的 Web API".在这一系列我们都解释消耗 Web API rest 风格的服务使用 jQuery ajax() 和其他方法的各种方法.您可以阅 ...

  4. 深入理解Activity启动流程(一)–Activity启动的概要流程

    概述 Android中启动某个Activity,将先启动Activity所在的应用.应用启动时会启动一个以应用包名为进程名的进程,该进程有一个主线程,叫ActivityThread,也叫做UI线程. ...

  5. Webservice WCF WebApi 前端数据可视化 前端数据可视化 C# asp.net PhoneGap html5 C# Where 网站分布式开发简介 EntityFramework Core依赖注入上下文方式不同造成内存泄漏了解一下? SQL Server之深入理解STUFF 你必须知道的EntityFramework 6.x和EntityFramework Cor

    Webservice WCF WebApi   注明:改编加组合 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API.在.net平台下, ...

  6. 理解中WebAPI的属性和相关操作 FormBody和 FormUri等(WebAPI 二)

    1.FromUri使用 将数据通过url方式传递.我们需要在webapi方法标明,这个参数只接受url中参数的值, $("#Save").click(function () { $ ...

  7. 你真的理解PeopleSoft的Web概要(web profile)嘛

    Web概要通过配置门户相关属性来控制门户的所有行为. 在PS系统中可以创建多个web概要,你可以通过不同的web概要来让用户路由到一个特定的web概要来控制超时,外观,缓存设置等.例如,通过Peopl ...

  8. WPF中的常用布局 栈的实现 一个关于素数的神奇性质 C# defualt关键字默认值用法 接口通俗理解 C# Json序列化和反序列化 ASP.NET CORE系列【五】webapi整理以及RESTful风格化

    WPF中的常用布局   一 写在开头1.1 写在开头微软是一家伟大的公司.评价一门技术的好坏得看具体的需求,没有哪门技术是面面俱到地好,应该抛弃对微软和微软的技术的偏见. 1.2 本文内容本文主要内容 ...

  9. ASP.NET WebApi 学习与实践系列(2)---WebApi 路由请求的理解

    目录 写在前面 WebApi Get 请求 1.无参数的请求 2.一个参数的请求 3.多个参数的请求 4.实体参数的请求 WebApi Post 请求 1.键值对请求 2.dynamic 动态类型请求 ...

随机推荐

  1. 应用程序缓存 AppCache

    Application Cache HTML5提供了一系列的特性来支持离线应用: application cache localStrorage web SQL & indexed datab ...

  2. MVC4,MVC3,VS2012+ entity framework Migration from Sqlserver to Mysql

    在开发的初期个人认为因VS与Sqlserver的配合很默契,即可以方便的实现Code First,又可以使用SqlServer Manager很漂亮的进行建模与变更,也许是个人的使用习惯MS的界面做的 ...

  3. 使用MySQL处理百万级以上数据时,不得不知道的几个常识

    最近一段时间参与的项目要操作百万级数据量的数据,普通SQL查询效率呈直线下降,而且如果where中的查询条件较多时,其查询速度简直无法容忍.之前数据量小的时候,查询语句的好坏不会对执行时间有什么明显的 ...

  4. Java Scoket之java.io.EOFException解决方案

    Java Scoket之java.io.EOFException解决方案   Socket接收数据的时候,常常会抛出java.io.EOFException异常,也没有明确的原因和提示,在网上搜搜,很 ...

  5. 04737_C++程序设计_第8章_多态性和虚函数

    例8.1 分析下面程序的输出结果. 例8.2 分别使用指针和引用的display函数. #include <iostream> using namespace std; const dou ...

  6. 用ADB(Android Debug Bridge)实时监测Android程序的运行

      监控Android设备上程序的运行,需要ADB的配合,具体ADB工具的介绍以及命令选项可见博客: http://blog.csdn.net/mliubing2532/article/details ...

  7. Windows消息大全

    最近在写TabControl的用户控件,需要用到sendMessage,已做备份. 引用:http://bbs.aau.cn/forum.php?mod=viewthread&tid=7776 ...

  8. <转>ASP.NET学习笔记之在ASP.NET MVC中使用DropDownList

    看到一篇关于dropdownlist的用法很好的阐述,比较清楚,留着,防止以后自己不记得,还可以瞅瞅. 在ASP.NET MVC中,尽管我们可以直接在页面中编写HTML控件,并绑定控件的属性,但更方便 ...

  9. Excel几个常用操作

    1.冻结第一行:视图->冻结窗格->冻结首行 2.第一行自动筛选:选择要设置的行,数据->筛选->自动筛选 3.在单元格中添加下拉菜单:(1)选中一列,数据->数据验证. ...

  10. C++中常用特殊符号简介(& , * , : , :: , ->)

    1."&"一般表示:引用,按位与,取地址. 如: class Complex { public: Complex operator+(Complex &c2) .. ...