【问题标题】:send fileupload to WCF发送文件上传到 WCF
【发布时间】:2013-08-06 13:30:24
【问题描述】:

我有文件上传和一些输入文本,我想使用 WCF 将值更新到 DB。

到目前为止,我通过字符串数组发送所有输入值,但我看不到如何使用 WCF 将文件上传到服务器

html:

 <input id="file" type="file" >
   <textarea name="textarea" class="jqte"> </textarea>
...

javascript:

 $.ajax({
                url: "/WebServices/forum.svc/InsertMessage",
                type: "POST",
                data: JSON.stringify({ currentMessage: currentMessage }),
                dataType: "json",
                contentType: "application/json; charset=utf-8",
                success: function (data) {

                }
            });

WCF:

  [OperationContract]
        public void InsertMessage(List<string> currentMessage)
        {

            return;
        }

知道如何解决这个问题吗?

谢谢

巴罗兹

【问题讨论】:

  • 使用 uplick.js ......它让你的任务超级简单......我犯了同样的错误,通过 ajax 发送文件......我失败了......使用 iframe 或一些 js ......这可能会有所帮助..只需 google js 用于文件上传..有大量 js 可用..

标签: c# javascript asp.net wcf


【解决方案1】:

我最近尝试过同样的事情,但失败了。

这种情况最好用js。http://www.enfew.com/12-excellent-ajax-upload-plugins/

如果您在现代浏览器上使用 ajax,或者在旧浏览器上回退到 iFrame,他们中的许多人会使用 ajax。所以浏览器兼容性也不是问题。

我自己用过https://code.google.com/p/upload-at-click/ .它使用起来非常简单,可以满足您的需求。

【讨论】:

  • uplick.js 是不错的选择,但我可以根据要求启动它吗?喜欢按钮单击,而不是浏览按钮?
  • 是的,你可以..点击 href,按钮 div..watever 你想要的......只要给你的元素一个上传者的 id......我是在一个 href 上做的......跨度>
  • 感谢 VAGABOND,但我想按需上传文件,如果我给出按钮的 id,它会打开文件浏览器。我想让用户完成页面上的所有字段并就在这时,将文件发送到服务器。
  • 然后相应地验证它...例如..如果联系人和姓名字段仅归档...允许用户上传文件...在 upclick 中有一个 onstart 函数..
  • 谢谢,最后一个问题:) 我可以限制文件大小和文件类型吗?
猜你喜欢
  • 1970-01-01
  • 2013-07-02
  • 1970-01-01
  • 1970-01-01
  • 2013-11-13
  • 1970-01-01
  • 1970-01-01
  • 2012-01-16
  • 1970-01-01
相关资源
最近更新 更多