zoukankan      html  css  js  c++  java
  • 微信上传文章素材—ASP.NET MVC从View层传数据到Controller层

    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[0].Content,
                        content_source_url = "",
                        digest = frontViewData[0].Digest,
                        show_cover_pic = frontViewData[0].ShowCoverPic,
                        thumb_media_id = mediaId.media_id,
                        title = frontViewData[0].Title,
                    };
                    //上传临时素材,测试账号用,永久素材上传一会后就会返回错误代码45009
                    //var result1 = MediaApi.UploadTemporaryNews(accessToken, 10000, news);
                    //上传永久素材
                    var result1 = MediaApi.UploadNews(accessToken, 10000, 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属性

  • 相关阅读:
    【转载】网站服务器运维记实:阿里云1核2G突发性能t5服务器突然变得卡顿
    【转载】C#中自定义Sort的排序规则IComparable接口
    【转载】C#将图片转换为二进制流调用
    【转载】ASP.NET MVC重写URL制作伪静态网页,URL地址以.html结尾
    Java通过反射机制修改类中的私有属性的值
    Android -- 分享功能和打开指定程序
    Java存储密码用字符数组
    java笔试题(3)
    Java中的String与常量池
    Android -- 距离感应器控制屏幕灭屏白屏
  • 原文地址:https://www.cnblogs.com/xiaomen/p/6089354.html
Copyright © 2011-2022 走看看