相关疑难解决方法(0)

如何为multipart/form-data设置webapi控制器

我想弄清楚如何完成这件事.我没有使用我的代码获得任何有用的错误消息,所以我使用其他东西来生成一些东西.我在错误消息后附加了该代码.我已经找到了一个教程,但我不知道如何用我所拥有的实现它.这就是我现在拥有的

public async Task<object> PostFile()
    {
        if (!Request.Content.IsMimeMultipartContent())
            throw new Exception();


        var provider = new MultipartMemoryStreamProvider();
        var result = new { file = new List<object>() };
        var item = new File();

        item.CompanyName = HttpContext.Current.Request.Form["companyName"];
        item.FileDate = HttpContext.Current.Request.Form["fileDate"];
        item.FileLocation = HttpContext.Current.Request.Form["fileLocation"];
        item.FilePlant = HttpContext.Current.Request.Form["filePlant"];
        item.FileTerm = HttpContext.Current.Request.Form["fileTerm"];
        item.FileType = HttpContext.Current.Request.Form["fileType"];

        var manager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext()));
        var user = manager.FindById(User.Identity.GetUserId());

        item.FileUploadedBy = user.Name;
        item.FileUploadDate = DateTime.Now;

        await Request.Content.ReadAsMultipartAsync(provider)
         .ContinueWith(async (a) =>
         {
             foreach (var file in provider.Contents)
             { …
Run Code Online (Sandbox Code Playgroud)

c# multipartform-data asp.net-web-api

47
推荐指数
5
解决办法
9万
查看次数

使用所有表单数据将JQuery ajax文件上载到ASP.NET

我正在建立一个网站,其中有一个职业页面,其中包含用于恢复上传的输入文件HTML控件.使用JQuery将表单值POST到ASPX页面时,除了文件上载外,一切正常.如何使用JQuery在一个AJAX请求中发布每个字段(包括文件)?我在Google中看到的示例只处理文件上传,而不处理其他字段.这是我的JQuery,没有制作用于文件上传的ASPX.

  <script type="text/javascript">

   $(document).ready(function(e) {

       // File variable
       var files;

       // Add events
       $('#resume').on('change', prepareUpload);

       // Grab the files and set them to our variable
       function prepareUpload(event)
       {
         files = event.target.files;
       }



   $( "#submit_btn" ).click(function( ) {

       var fileData = new FormData();
       $.each(files, function(key, value)
       {
           fileData.append(key, value);
       });



       var formMessage = tinyMCE.get('message').getContent();
       var formName = $('.contact-container #name').val();
       var formPhone = $('.contact-container #phone').val();
       var formEmail = $('.contact-container #email').val();
       var formApplyFor = $('.contact-container #applyfor').val();

    // Get some values from elements on …
Run Code Online (Sandbox Code Playgroud)

javascript asp.net ajax jquery

2
推荐指数
1
解决办法
7909
查看次数