校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 基于.NET中:自動將請求參數(shù)綁定到ASPX、ASHX和MVC的方法(菜鳥必看)

基于.NET中:自動將請求參數(shù)綁定到ASPX、ASHX和MVC的方法(菜鳥必看)

熱門標(biāo)簽:五常地圖標(biāo)注 鄭州400電話辦理 聯(lián)通 萊蕪?fù)夂綦婁N機器人價格 電銷語音自動機器人 地圖標(biāo)注和認領(lǐng) 戶外地圖標(biāo)注軟件手機哪個好用 智能電話營銷外呼系統(tǒng) 長春呼叫中心外呼系統(tǒng)哪家好 凱立德導(dǎo)航官網(wǎng)地圖標(biāo)注

前言

剛開始做AJAX應(yīng)用的時候,經(jīng)常要手工解析客戶端傳遞的參數(shù),這個過程極其無聊,而且代碼中充斥著:Request["xxx"]之類的代碼。

這篇文章的目的就是告訴初學(xué)者如何自動將客戶端用AJAX發(fā)送的參數(shù)自動綁定為強類型的成員屬性或方法參數(shù)。

自動綁定到ASPX和ASHX

框架支持

復(fù)制代碼 代碼如下:

using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;

 namespace Happy.Web
 {
     public interface IWantAutoBindProperty
     {
     }
 }

復(fù)制代碼 代碼如下:

using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;

 namespace Happy.Web
 {
     [AttributeUsage(AttributeTargets.Property, AllowMultiple = true)]
     public sealed class AutoBind : Attribute
     {
     }
 }

復(fù)制代碼 代碼如下:

using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;

 using System.Web;

 using Newtonsoft.Json;

 using Happy.ExtensionMethods.Reflection;

 namespace Happy.Web
 {
     public class JsonBinderModule : IHttpModule
     {
         public void Init(HttpApplication context)
         {
             context.PreRequestHandlerExecute += OnPreRequestHandlerExecute;
         }

         private void OnPreRequestHandlerExecute(object sender, EventArgs e)
         {
             if (!(HttpContext.Current.CurrentHandler is IWantAutoBindProperty))
             {
                 return;
             }

             var properties = HttpContext.Current.CurrentHandler.GetType().GetProperties();

             foreach (var property in properties)
             {
                 if (!property.IsDefined(typeof(AutoBind), true))
                 {
                     continue;
                 }

                 string json = HttpContext.Current.Request[property.Name];

                 var value = JsonConvert.DeserializeObject(json, property.PropertyType);

                 property.SetValue(HttpContext.Current.Handler, value);
             }
         }

         public void Dispose()
         {
         }
     }
 }

代碼示例
復(fù)制代碼 代碼如下:

?xml version="1.0" encoding="utf-8"?>

 configuration>

     system.web>
       compilation debug="false" targetFramework="4.0" />
       httpModules>
         add name="JsonBinderModule" type="Happy.Web.JsonBinderModule"/>
       /httpModules>
     /system.web>

 /configuration>

復(fù)制代碼 代碼如下:

/// reference path="../ext-all-debug-w-comments.js" />
 var data = {
     Name: '段光偉',
     Age: 28
 };

 Ext.Ajax.request({
     url: '../handlers/JsonBinderTest.ashx',
     method: 'POST',
     params: { user: Ext.encode(data) }
 });

復(fù)制代碼 代碼如下:

%@ WebHandler Language="C#" Class="JsonBinderTest" %>

 using System;
 using System.Web;

 using Happy.Web;

 public class JsonBinderTest : IHttpHandler, IWantAutoBindProperty
 {
     [AutoBind]
     public User user { get; set; }

     public void ProcessRequest(HttpContext context)
     {
         context.Response.ContentType = "text/plain";
         context.Response.Write(string.Format("姓名:{0},年齡:{1}", user.Name, user.Age));
     }

     public bool IsReusable
     {
         get
         {
             return false;
         }
     }
 }

 public class User
 {
     public string Name { get; set; }

     public int Age { get; set; }
 }

運行結(jié)果

自動綁定到MVC
框架支持

復(fù)制代碼 代碼如下:

using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;

 using System.Web.Mvc;

 using Newtonsoft.Json;

 namespace Tenoner.Web.Mvc
 {
     public class JsonBinder : IModelBinder
     {
         public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
         {
             string json = controllerContext.HttpContext.Request[bindingContext.ModelName];

             return JsonConvert.DeserializeObject(json, bindingContext.ModelType);
         }
     }
 }

您可能感興趣的文章:
  • ashx中使用session的方法(獲取session值)
  • ASP.NET ASHX中獲得Session的方法
  • Asp.net在ashx文件中處理Session問題解決方法
  • 在ashx文件中使用session的解決思路
  • ashx介紹以及ashx文件與aspx文件之間的區(qū)別
  • ashx文件的使用小結(jié)
  • aspx與ascx,ashx的用法總結(jié)
  • 后綴為 ashx 與 axd 的文件區(qū)別淺析
  • *.ashx文件不能訪問Session值的解決方法

標(biāo)簽:紅河 福州 西寧 岳陽 衢州 宣城 西藏 湖州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《基于.NET中:自動將請求參數(shù)綁定到ASPX、ASHX和MVC的方法(菜鳥必看)》,本文關(guān)鍵詞  基于,.NET,中,自動,將,請求,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《基于.NET中:自動將請求參數(shù)綁定到ASPX、ASHX和MVC的方法(菜鳥必看)》相關(guān)的同類信息!
  • 本頁收集關(guān)于基于.NET中:自動將請求參數(shù)綁定到ASPX、ASHX和MVC的方法(菜鳥必看)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    蜜桃一区二区三区在线| 天天影视涩香欲综合网| 日韩欧美色综合网站| 91黄色小视频| 欧美日韩精品欧美日韩精品| 色噜噜狠狠色综合欧洲selulu| 99视频有精品| 91传媒视频在线播放| 欧美色网一区二区| 欧美老肥妇做.爰bbww| 制服丝袜日韩国产| 日韩欧美国产系列| 久久久久久免费网| 国产精品蜜臀av| 亚洲六月丁香色婷婷综合久久| 亚洲精品水蜜桃| 亚洲成人综合在线| 精品亚洲欧美一区| 成人av资源站| 欧美亚洲高清一区二区三区不卡| 欧美日韩另类一区| 精品久久久久久亚洲综合网| 欧美国产精品一区| 亚洲一区二区三区影院| 九九国产精品视频| 色综合一个色综合| 欧美区在线观看| 久久免费偷拍视频| 亚洲另类春色国产| 国产一区二区三区综合| 91亚洲午夜精品久久久久久| 欧美一卡二卡在线| 综合网在线视频| 久久精品国产77777蜜臀| 9久草视频在线视频精品| 欧美一区中文字幕| 最新成人av在线| 蜜臀久久99精品久久久画质超高清 | 偷窥少妇高潮呻吟av久久免费| 久久91精品久久久久久秒播| 91美女在线视频| 欧美tickling网站挠脚心| 国产精品电影院| 久久不见久久见免费视频7| 97精品久久久午夜一区二区三区| 欧美一级久久久| 伊人婷婷欧美激情| 国产成人精品免费| 91精品久久久久久久久99蜜臂| 自拍偷在线精品自拍偷无码专区| 精品一区二区免费| 欧美精品少妇一区二区三区| 亚洲日本一区二区| 国模一区二区三区白浆| 欧美日韩一区二区三区四区| ㊣最新国产の精品bt伙计久久| 美女视频黄免费的久久 | 一区二区三区四区不卡在线 | 国产视频一区不卡| 日韩av高清在线观看| 在线观看www91| 亚洲免费成人av| 不卡一卡二卡三乱码免费网站| 久久老女人爱爱| 国产一区999| 精品少妇一区二区三区免费观看 | 色系网站成人免费| 国产精品久久久久久久久图文区| 激情五月激情综合网| 日韩一区二区免费在线观看| 天堂精品中文字幕在线| 欧美区在线观看| 日韩精品免费视频人成| 欧美日韩一区不卡| 亚洲成精国产精品女| 欧美在线观看禁18| 香蕉乱码成人久久天堂爱免费| 日本高清无吗v一区| 亚洲精选视频在线| 欧美系列一区二区| 五月婷婷综合网| 欧美欧美欧美欧美| 美女一区二区视频| 26uuu亚洲婷婷狠狠天堂| 国产资源在线一区| 中文字幕av免费专区久久| 不卡的av在线| 亚洲最大成人综合| 欧美伦理电影网| 精品综合免费视频观看| 亚洲国产高清在线观看视频| 91视频在线观看| 天天综合色天天综合| 欧美va亚洲va| 99国产精品久久久| 亚洲韩国一区二区三区| 日韩欧美一级二级| 成人ar影院免费观看视频| 亚洲图片激情小说| 欧美一区二区大片| voyeur盗摄精品| 亚洲在线成人精品| 日韩精品一区二区三区中文不卡| 国产精品 欧美精品| 亚洲少妇最新在线视频| 日韩一区二区三区三四区视频在线观看| 激情文学综合插| 中文字幕亚洲在| 日韩色在线观看| 成人免费观看av| 亚洲国产成人av网| 久久久一区二区三区捆绑**| 色婷婷激情综合| 国产一区视频在线看| 一区二区三区.www| 久久嫩草精品久久久久| 欧美日韩国产一二三| 粉嫩一区二区三区性色av| 亚洲自拍与偷拍| 国产精品视频第一区| 69成人精品免费视频| 99在线热播精品免费| 久久av资源网| 天天影视涩香欲综合网| 综合在线观看色| 久久久国产午夜精品 | 狠狠色狠狠色综合系列| 一区二区三区在线免费观看 | 亚洲欧洲综合另类| 精品嫩草影院久久| 欧美精品vⅰdeose4hd| zzijzzij亚洲日本少妇熟睡| 加勒比av一区二区| 石原莉奈在线亚洲二区| 一区二区三区四区精品在线视频| 中文字幕不卡在线播放| 精品88久久久久88久久久| 欧美二区三区91| 91福利在线免费观看| 99久久精品免费看| 国产乱淫av一区二区三区 | 国产99久久久久久免费看农村| 丝袜美腿亚洲色图| 亚洲第一激情av| 亚洲乱码国产乱码精品精98午夜 | 亚洲精品国产品国语在线app| 国产视频一区二区在线| 欧美精品一区二区三区很污很色的| 欧美日韩一区视频| 欧洲精品中文字幕| 欧美午夜一区二区| 欧美网站大全在线观看| 欧美视频一区二区三区四区| 91久久精品国产91性色tv | 免费成人深夜小野草| 日一区二区三区| 丝袜亚洲精品中文字幕一区| 天堂av在线一区| 免费在线欧美视频| 精品无码三级在线观看视频| 国产精品亚洲专一区二区三区| 国产在线不卡一区| www.久久精品| 色老头久久综合| 欧美日本视频在线| 欧美一级搡bbbb搡bbbb| 26uuu精品一区二区在线观看| 久久精品免视看| 中文字幕一区二区三区在线播放 | 日本在线观看不卡视频| 偷窥少妇高潮呻吟av久久免费| 日本欧美久久久久免费播放网| 久久99精品久久久久久久久久久久| 国产一区二区主播在线| 成人激情校园春色| 欧美四级电影网| 精品人在线二区三区| 成人欧美一区二区三区黑人麻豆| 亚洲一二三区在线观看| 免费欧美高清视频| 丁香婷婷深情五月亚洲| 在线亚洲高清视频| 日韩视频在线永久播放| 国产精品成人免费精品自在线观看 | 日韩亚洲欧美在线观看| 欧美激情自拍偷拍| 亚洲国产日产av| 国产精品99久| 欧美偷拍一区二区| 久久久午夜电影| 亚洲国产人成综合网站| 国产不卡在线视频| 欧美日韩一区二区三区视频| 久久久久久97三级| 亚洲不卡在线观看| 91在线精品一区二区三区| 日韩欧美一级精品久久| 亚洲欧美日韩国产另类专区| 国产在线播精品第三| 欧美日韩亚洲综合|