Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用C语言上传Extjs文件_C#_Sql Server 2008_File Upload_Extjs4.1_Filefield - Fatal编程技术网

C# 用C语言上传Extjs文件

C# 用C语言上传Extjs文件,c#,sql-server-2008,file-upload,extjs4.1,filefield,C#,Sql Server 2008,File Upload,Extjs4.1,Filefield,我知道xtype:filefield是如何工作的,我还意识到文件上传并没有使用常规的ajax方法来读写数据库中的数据 我可以正常设置文件字段,当我单击浏览按钮时,我可以选择必要的文件 this.fp = Ext.create('Ext.form.Panel', { scope: this, width: 200, frame: true, title: 'File Upload Form',

我知道xtype:filefield是如何工作的,我还意识到文件上传并没有使用常规的ajax方法来读写数据库中的数据

我可以正常设置文件字段,当我单击浏览按钮时,我可以选择必要的文件

this.fp = Ext.create('Ext.form.Panel', {
           scope: this,
           width: 200,
           frame: true,
           title: 'File Upload Form',
           autoHeight: true,
           bodyStyle: 'padding: 10px 10px 0 10px;',
           items: [
           {
               xtype: 'filefield'

           }
           ],
           buttons: [
           { text: 'Upload',
               handler: function () {
                   var form = this.up('form').getForm();
                   if (form.isValid()) {
                       form.submit({
                           url: 'Upload.aspx',
                           waitMsg: 'Uploading your file...',

                           success: function (form, action) {

                               alert("OK:" + action.result.message);

                           },
                           failure: function (form, action) {
                               alert("Error:" + action.result.message);
                           }

                       });
                   }
               }
           }
           ]


       });
单击“上载”按钮后出现的问题是。。。如何将文件上载到服务器端…sql db。。。使用c

我试着用upload.aspx.cs创建一个upload.aspx页面,这样做只是为了看看它是否有效

public partial class Upload : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

    HttpContext context = HttpContext.Current;


    if (context.Request.Files.Count > 0)
    {

        BinaryReader file = new BinaryReader(context.Request.Files[0].InputStream);

        string line;
        while ((line = file.ReadString()) != null)
        {

            // sql connection?
        }

    }

    // prepare response
    MessageOb result = new MessageOb();

    result.success = true;

    result.message = "Success";


}
}
但是我得到了这个错误

Ext.Error: You're trying to decode an invalid JSON String: 

有人记录了我可以看到从客户端的extjs和服务器端的c上传文件到sql db的通常步骤吗。。。或者,如果有人能告诉我这是如何完成的,我将不胜感激。问题可能与您如何从上传表单提交中返回数据有关。Ext.JS要求响应为JSON或XML,我将验证您没有返回html文档

我想MessageOb会以某种方式处理这件事…也许


谢谢michael…上传时我没有在extjs端做任何事情。。。我所实现的只是XtypeFileField,它有自己的文件查找窗口,在提交时它会查找upload.aspx页面。。。我不知道应该怎么做才能让上传正常工作,实际上是在页面加载启动之前。。。因为我刚刚意识到,无论我在我的.cs文件中放了什么,我仍然会遇到同样的错误。你能把你的ext js panel表单剥离到最底层并进行测试,直到你启动页面加载吗?谢谢Michael。。。你是对的。。。问题确实出在我的upload.aspx中。。。我用完全不同的技术让它工作。。。thanks@EagleFox如果您自己提供一个答案,以便其他登录此页面的人能够获得正确的信息,那就更好了。