View层:

$('#btnNews').click(function() {
if (!confirm('确定要提交吗?')) {
return;
}
var frontViewData = [];
var title = $("*[name='title']").val();
var digest = $("*[name='digest']").val();
var showCoverPic = $("*[name='show_cover_pic']").val();
var content = CKEDITOR.instances.content.getData();
frontViewData.push({ Title: title,Digest: digest, ShowCoverPic: showCoverPic, Content: content });
$.ajax({
type:'POST',
url: '/Media/AddArticle',
data: JSON.stringify(frontViewData),
contentType: 'application/json;charset=utf-8',
success: function(json) {
alert(json.Message);
}
});
});

Controller层:

public ActionResult AddArticle(List<ArticleViewModel> frontViewData)
{
var file = TempData["savePath"].ToString();
var accessToken = AccessTokenContainer.GetAccessToken(AppId);
try
{
//上传临时素材,测试账号用,永久素材上传一会后就会返回错误代码45009
//var mediaId = MediaApi.UploadTemporaryMedia(accessToken,UploadMediaFileType.thumb, file).thumb_media_id;
//上传永久素材
var mediaId = MediaApi.UploadForeverMedia(accessToken, file);
var news = new NewsModel()
{
author = "呵呵哒",
content = frontViewData[].Content,
content_source_url = "",
digest = frontViewData[].Digest,
show_cover_pic = frontViewData[].ShowCoverPic,
thumb_media_id = mediaId.media_id,
title = frontViewData[].Title,
};
//上传临时素材,测试账号用,永久素材上传一会后就会返回错误代码45009
//var result1 = MediaApi.UploadTemporaryNews(accessToken, 10000, news);
//上传永久素材
var result1 = MediaApi.UploadNews(accessToken, , news);
var json = new
{
Success = result1.errmsg == "ok",
Message = "新增成功"
};
return Json(json);
}
catch(Exception ex)
{
var json = new
{
Message = ex.Message
};
return Json(json);
}
}

ViewModel层:

    public class ArticleViewModel
{
public string Title { get; set; }
public string ThumbUrl { get; set; }
public string Digest { get; set; }
public string ShowCoverPic { get; set; }
public string Content { get; set; }
}

还可以利用Request.Form[""]进行传值不过必须是inout中的name属性

微信上传文章素材—ASP.NET MVC从View层传数据到Controller层的更多相关文章

  1. ASP.NET MVC 之View

    仅此一文让你明白ASP.NET MVC 之View的显示(仅此一文系列二)   题外话 一周之前写的<仅此一文让你明白ASP.NET MVC原理>受到了广大学习ASP.NET MVC同学的 ...

  2. 解析ASP.NET Mvc开发之删除修改数据

    目录: 1)从明源动力到创新工场这一路走来 2)解析ASP.NET WebForm和Mvc开发的区别 3)解析ASP.NET Mvc开发之查询数据实例 4)解析ASP.NET Mvc开发之EF延迟加载 ...

  3. ASP.NET MVC 5 学习教程:数据迁移之添加字段

    原文 ASP.NET MVC 5 学习教程:数据迁移之添加字段 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符 ...

  4. 【ASP.NET MVC】View与Controller之间传递数据

    1   概述 本篇文章主要从操作上简要分析Controller<=>View之间相互传值,关于页面之间传值,如果感兴趣,可参考我另外一篇文章ASP.NET 页面之间传值的几种方式 . Co ...

  5. ABP示例程序-使用AngularJs,ASP.NET MVC,Web API和EntityFramework创建N层的单页面Web应用

    本片文章翻译自ABP在CodeProject上的一个简单示例程序,网站上的程序是用ABP之前的版本创建的,模板创建界面及工程文档有所改变,本文基于最新的模板创建.通过这个简单的示例可以对ABP有个更深 ...

  6. 【ASP.NET MVC系列】浅谈ASP.NET MVC 视图与控制器传递数据

    ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...

  7. 解析ASP.NET Mvc开发之删除修改数据 分类: ASP.NET 2014-01-04 23:41 3203人阅读 评论(2) 收藏

    目录: 从明源动力到创新工场这一路走来 解析ASP.NET WebForm和Mvc开发的区别 解析ASP.NET 和Mvc开发之查询数据实例 解析ASP.NET Mvc开发之EF延迟加载 ------ ...

  8. 【ASP.NET MVC系列】浅谈数据注解和验证

    [ASP.NET MVC系列]浅谈数据注解和验证   [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google C ...

  9. [渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:为ASP.NET MVC应用程序读取相关数据

    这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第七篇:为ASP.NET MVC应用程序 ...

随机推荐

  1. UpdatePanel里的Repeater和DropDownList

    在updatepanel里使用dropdownlist的AutoPostBack,正常情况下都可以局部刷新. 但是,如果updatepanel下是Repeater,repeater里绑定dropdow ...

  2. TOMCAT运行一段时间后网页无响应或连不上,TOMCAT无错误日志

    解决方法:修改 tomcat 的 java options 参数1)增加java options参数-Xmn384m-XX:MaxPermSize=128m-XX:+UseConcMarkSweepG ...

  3. Reverse Linked List II 单向链表逆序(部分逆序)

    0 问题描述 原题点击这里. 将单向链表第m个位置到第n个位置倒序连接.例如, 原链表:1->2->3->4->5, m=2, n =4 新链表:1->4->3-& ...

  4. 黑马程序员——【Java高新技术】——代理

    ---------- android培训.java培训.期待与您交流! ---------- 一.“代理概述”及“AOP概念” (一)代理概述 1.问题:要为已存在的多个具有相同接口的目标类的各个方法 ...

  5. Exception mybatis 配置文件:<typeAlias alias="***" type="***"/> 重复配置

    INFO - Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory ...

  6. Google play(Android market)账户申请

    从09年到现在,Google play账户在国内申请一直都是个问题,根本的原因是国内不支持Google wallet(原Google Checkout) 在国内要获取一个Google play账户,常 ...

  7. Android 终于官方支持按百分比来设置控件的宽高了

    dependencies { compile 'com.android.support:percent:22.2.0' } 支持布局 PercentRelativeLayout <android ...

  8. HDU 5384 AC自动机

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=5384 题意:给n个母串,给m个匹配串,求每个母串依次和匹配串匹配,能得到的数目和. 分析:之前并不知道AC ...

  9. Tarjan算法--强连通分量

    tarjan的过程就是dfs过程. 图一般能画成树,树的边有三种类型,树枝边 + 横叉边(两点没有父子关系) + 后向边(两点之间有父子关系): 可以看到只有后向边能构成环,即只有第三张图是强连通分量 ...

  10. List转MVC DropDownListFor(SelectList)

    /// <summary> /// List转SelectListItem /// </summary> /// <typeparam name="T" ...