سؤال

لقد قمت بإنشاء خدمة WCF لقبول ملف وكتابته على القرص.تتكون الواجهة الأمامية من صفحة بها SWFUpload والتي تتعامل مع التحميل من جانب العميل.على ما يبدو، يقوم SWFUpload بنشر البيانات بنوع محتوى:بيانات متعددة الأجزاء/النموذج.

أعتقد أن هذا جيد ولكن من ناحية الخدمة أحصل على خطأ.الخطأ هو "ProtocolException" الذي يتوقع نص/XML.لقد جربت ترميزات مختلفة للرسائل في الروابط ولكن لا يبدو أن هناك شيئًا يعمل.

كيف يمكنني تحميل هذا الملف باستخدام بيانات متعددة الأجزاء/النموذج؟

هل كانت مفيدة؟

المحلول

@جدياز،

@JasonS على حق، لتحميل الملف تحتاج إلى نقله كدفق بايت.تحتاج إلى استخدام تدفق WCF.على سبيل المثال، حول كيفية تحميل الملف عبر WCF، انظر مقالة من http://kjellsj.blogspot.com

نصائح أخرى

ما تريد استخدامه هو على الأرجح متوم, ، إذا كنت تريد أن تكون قياسية.باستخدام هذا، يمكنك الحصول على رسائل MIME متعددة الأجزاء.

يتعين عليك بعد ذلك قراءة الملف كدفق وإدخاله في إحدى معلمات الطلب.

ربما تكون خدمة WCF الخاصة بك تستهدف .NET Framework 3.5 وأن IIS الخاص بك يعمل على .NET Framework 4.0.في هذه الحالة (عدم تطابق إطار العمل) تحتاج إلى تعديل الخدمة الخاصة بك.

أعتقد أنه سيتعين عليك نقل الملف كمصفوفة بايت إلى WCF.ستحتاج إلى التعامل مع المنشور من SWFUpload والتحويل إلى مصفوفة بايت قبل إرساله إلى خدمتك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top