مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

iran

عضویت از 1394/01/31

مشکل آپلود word با HttpPostedFileBase در mvc.net

  • سه شنبه 14 اسفند 1397
  • 16:58
تشکر میکنم

سلام

من کد زیر را نوشته ام

 @using(Html.BeginForm("Upload", "Home", FormMethod.Post, new {enctype = "multipart/form-data"}))
{
    <table>
        <tr>
            <td>File:</td>
            <td>
                <input type="file" name="UploadedFile" />
            </td>
        </tr>
        <tr>
            <td colspan="2">
                <input type="submit" name="Submit" value="Submit" />
            </td>
        </tr>
    </table>
}
 
 public ActionResult Upload(HttpPostedFileBase UploadedFile)
        {

            if (Request != null)
            {
                if ((UploadedFile != null) && (UploadedFile.ContentLength > 0) && !string.IsNullOrEmpty(UploadedFile.FileName))
                {
                    string fileName = UploadedFile.FileName;
                    string fileContentType = UploadedFile.ContentType;
                    byte[] fileBytes = new byte[UploadedFile.ContentLength];
                    var data = UploadedFile.InputStream.Read(fileBytes, 0, Convert.ToInt32(UploadedFile.ContentLength));
                  
                }
            }
            return View();
        }

اما وقتی فایل word که پسوند docx  یا doc دارد ContentLength را صفر , fileBytes را هم {byte[0]} برمیگرداند
برای حل این مشکل باید چکار کنم

پاسخ های این پرسش

تعداد پاسخ ها : 6 پاسخ
کاربر سایت

محمد اردوخانی

عضویت از 1396/05/17

  • چهارشنبه 15 اسفند 1397
  • 10:39

شاید به دلیل Limit های موجود برای Input:File هستش

برای Input خودتون attribute مربوط به accept رو بذارین که مشخص میکنه چه type رو مد نظر دارین :

<input type="file" accept=".doc,.docx">

کاربر سایت

iran

عضویت از 1394/01/31

  • چهارشنبه 15 اسفند 1397
  • 11:07

سلام

مهندس بازهم هم fileBytes را {byte[0]}  برمیگرداند

کاربر سایت

محمد اردوخانی

عضویت از 1396/05/17

  • چهارشنبه 15 اسفند 1397
  • 11:44

فقط برای docx , doc این اتفاق میفته؟

من کد های شما رو در یه solution جدید گذاشتم و اجرا گرفتم

کد شما مشکلی نداره و برای من کار کرد

میشه اطلاعات کاملتری از پروژتون رو ارسال کنین؟

Handler خاصی برای دریافت اطلاعات ایجاد نکردین؟

کاربر سایت

iran

عضویت از 1394/01/31

  • چهارشنبه 15 اسفند 1397
  • 11:57

سلام

ممنون که امتحان کردید 

مهندس لطف میکنید پروژه را آپلود کنید

من حتی باپروژه شما AjaxFileUpload چک کردم جواب نداد 

کاربر سایت

محمد اردوخانی

عضویت از 1396/05/17

  • چهارشنبه 15 اسفند 1397
  • 12:06

بله

این سورسش:

فایل های ضمیمه

کاربر سایت

iran

عضویت از 1394/01/31

  • چهارشنبه 15 اسفند 1397
  • 13:42

سلام

مهندس 

این فایل هم باز تشخیص نداد 

نمی دانم باید چه تنظیمات دیگری انجام بدهمsad

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)