Asp.net MVC ActionResult返回值

1 視圖類型

  • 返回視圖
     public ActionResult Index()
        {           
            return View();
        }

2 文本類型

可以指定返回的文本內(nèi)容咽瓷,編碼格式和文本類型(MIME類型)

  • 返回JavaScript腳本
 public ActionResult SetJS()
        {
            String STR = "alert('ceshi');";
            return Content(STR, "text/javascript");

        }
  • 返回CSS樣式
 public ActionResult Css()
        {
            HttpCookie cookie = Request.Cookies["theme"] ?? new HttpCookie("theme", "default");
            switch (cookie.Value)
            {
                case "Theme1": return Content("body{font-family: SimHei; font-size:1.2em}", "text/css");
                case "Theme2": return Content("body{font-family: KaiTi; font-size:1.2em}", "text/css");
                default: return Content("body{font-family: SimSong; font-size:1.2em}", "text/css");
            }
        }

3 JSON類型

public ActionResult Json()  
 {  
     Dictionary<string, object> dic = new Dictionary<string, object>();  
     dic.Add("id", 100);  
     dic.Add("name", "liming");  
     return Json(dic, JsonRequestBehavior.AllowGet);  
 }  

注意:若要允許 GET 請求纤泵,請將 JsonRequestBehavior 設(shè)置為 AllowGet。

3 圖片多媒體類型

-圖片類型

  public ActionResult Image(string id)
        {
            string path = Server.MapPath($"/images/{id}.jpg");
            return File(path, "image/jpeg");
        }

5 JavaScript腳本類型(同文本類型返回腳本的方法)

 public ActionResult GetData()
        {
            string script = "alert('asdf');";
            return JavaScript(script);

        }

6 文件類型

下載excel表格文件的例子

 public FileStreamResult Download()
        {
            string fileName = "超市設(shè)備臺賬.xlsx";//客戶端保存的文件名
            string filePath = Server.MapPath("~/Downloads/123.xlsx");//路徑
            LogService.AddOperateLogInfo(CurrentUser.UserID, $"導(dǎo)出設(shè)備臺賬", "導(dǎo)出");//計入操作日志
            return File(new FileStream(filePath, FileMode.Open), "text/plain",fileName);
        }

7常見程序異常

  • 1Json序列化錯誤
image.png

這是因為Json方法實際上采用的是JavaScriptSerializer類的Serialize和Desserialize方法實現(xiàn)的掉丽。JavaScriptSerializer類有一個屬性MaxJsonLength,這個屬性限制了序列化為Json字符串的長度悯搔,默認為4M的Unicode字符串?dāng)?shù)據(jù)佃蚜。若在項目中需要序列大數(shù)據(jù)超過4M,系統(tǒng)就會拋異常了夭咬。可采用如下解決此問題。
在控制器中添加具有返回JsonResult 類型的方法LargeJson(重載加派,一個允許get請求)叫确,然后在需要返回大數(shù)據(jù)json的action調(diào)用,即用return LargeJson()代替原先的return Json()

public JsonResult LargeJson(object data)
{
     return new JsonResult()
      {
                Data = data,
                MaxJsonLength = Int32.MaxValue,//Json序列化數(shù)據(jù)限制修改
        };
}
public JsonResult LargeJson(object data,JsonRequestBehavior behavior)
{
            return new System.Web.Mvc.JsonResult()
            {
                Data = data,
                JsonRequestBehavior = behavior,
                MaxJsonLength = Int32.MaxValue
            };
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末芍锦,一起剝皮案震驚了整個濱河市竹勉,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌娄琉,老刑警劉巖次乓,帶你破解...
    沈念sama閱讀 218,682評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異孽水,居然都是意外死亡票腰,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評論 3 395
  • 文/潘曉璐 我一進店門女气,熙熙樓的掌柜王于貴愁眉苦臉地迎上來杏慰,“玉大人,你說我怎么就攤上這事炼鞠√幽” “怎么了?”我有些...
    開封第一講書人閱讀 165,083評論 0 355
  • 文/不壞的土叔 我叫張陵簇搅,是天一觀的道長。 經(jīng)常有香客問我软吐,道長瘩将,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,763評論 1 295
  • 正文 為了忘掉前任凹耙,我火速辦了婚禮姿现,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘肖抱。我一直安慰自己备典,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,785評論 6 392
  • 文/花漫 我一把揭開白布意述。 她就那樣靜靜地躺著提佣,像睡著了一般。 火紅的嫁衣襯著肌膚如雪荤崇。 梳的紋絲不亂的頭發(fā)上拌屏,一...
    開封第一講書人閱讀 51,624評論 1 305
  • 那天,我揣著相機與錄音术荤,去河邊找鬼倚喂。 笑死,一個胖子當(dāng)著我的面吹牛瓣戚,可吹牛的內(nèi)容都是我干的端圈。 我是一名探鬼主播焦读,決...
    沈念sama閱讀 40,358評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼舱权!你這毒婦竟也來了矗晃?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,261評論 0 276
  • 序言:老撾萬榮一對情侶失蹤刑巧,失蹤者是張志新(化名)和其女友劉穎喧兄,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體啊楚,經(jīng)...
    沈念sama閱讀 45,722評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡吠冤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了恭理。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拯辙。...
    茶點故事閱讀 40,030評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖颜价,靈堂內(nèi)的尸體忽然破棺而出涯保,到底是詐尸還是另有隱情,我是刑警寧澤周伦,帶...
    沈念sama閱讀 35,737評論 5 346
  • 正文 年R本政府宣布夕春,位于F島的核電站,受9級特大地震影響专挪,放射性物質(zhì)發(fā)生泄漏及志。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,360評論 3 330
  • 文/蒙蒙 一寨腔、第九天 我趴在偏房一處隱蔽的房頂上張望速侈。 院中可真熱鬧,春花似錦迫卢、人聲如沸倚搬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽每界。三九已至,卻和暖如春幻捏,著一層夾襖步出監(jiān)牢的瞬間盆犁,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評論 1 270
  • 我被黑心中介騙來泰國打工篡九, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留谐岁,地道東北人。 一個月前我還...
    沈念sama閱讀 48,237評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像伊佃,于是被迫代替她去往敵國和親窜司。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,976評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理航揉,服務(wù)發(fā)現(xiàn)塞祈,斷路器,智...
    卡卡羅2017閱讀 134,659評論 18 139
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫帅涂、插件议薪、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,105評論 4 62
  • 難熬時,總渴望某個人能給予你幫助媳友,孤獨時斯议,總想有個人陪著你〈济可生命中難熬的日子多的是哼御,孤獨的日子更少不了,你必須忍...
    感官迷宮閱讀 263評論 0 0
  • 我們都是被城市化的一員焊唬,我們回不去故鄉(xiāng)恋昼,也離不開城市。 我可以做的只有用相機留下曾經(jīng)的你 曾經(jīng)的小香港 ...
    絕璐逢生閱讀 7,918評論 4 4
  • 生活中赶促,課堂上液肌,工作后,我們總是喜歡等待鸥滨,這樣說卻又不恰當(dāng)矩屁,以偏概全,因為在涉及我們自身利益的時候爵赵,我們總是...
    扶疏w閱讀 128評論 1 0