• 大小: 18KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-10
  • 语言: C#
  • 标签: WCF  Multipart  

资源简介

WCF 是微软力推的通讯框架,它能够以 ASP.NET WebService 的方式实现 RESTful 方式的服务。但是缺陷是目前的版本不支持对 HTTP multipart 格式的自动解析。而不像传统的 ASP.NET WebService 可以自动解析 multipart 中的多媒体数据,并通过访问 Context.Request.Form["name"] 和 Context.Request.Files["name"] 方便地访问。 这份代码在 HttpMultipartFormDataParser (https://github.com/Vodurden/Http-Multipart-Data-Parser) 的基础上,解决了中文乱码的问题。希望给和我一样曾经被这个问题困扰的朋友一些帮助。 关于代码的使用方式,请参见 Vodurden 在 GitHub 上的说明。

资源截图

代码片段和文件信息

// --------------------------------------------------------------------------------------------------------------------
// 
//   Copyright (c) 2013 Jake Woods
//   
//   Permission is hereby granted free of charge to any person obtaining a copy of this software 
//   and associated documentation files (the “Software“) to deal in the Software without restriction 
//   including without limitation the rights to use copy modify merge publish distribute 
//   sublicense and/or sell copies of the Software and to permit persons to whom the Software 
//   is furnished to do so subject to the following conditions:
//   
//   The above copyright notice and this permission notice shall be included in all copies 
//   or substantial portions of the Software.
//   
//   THE SOFTWARE IS PROVIDED “AS IS“ WITHOUT WARRANTY OF ANY KIND EXPRESS OR IMPLIED 
//   INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY FITNESS FOR A PARTICULAR 
//   PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR 
//   ANY CLAIM DAMAGES OR OTHER LIABILITY WHETHER IN AN ACTION OF CONTRACT TORT OR OTHERWISE 
//   ARISING FROM OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
// 
// Jake Woods
// 
//   Provides character based and byte based stream-like read operations over multiple
//   streams and provides methods to add data to the front of the buffer.
// 

// --------------------------------------------------------------------------------------------------------------------
namespace Wenhe.Foundation.Web.HttpMultipart
{
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;

    /// 
    ///     Provides character based and byte based stream-like read operations over multiple
    ///     streams and provides methods to add data to the front of the buffer.
    /// 

    internal class BinaryStreamStack
    {
        #region Fields

        /// 
        ///     Holds the streams to read from the stream on the top of the
        ///     stack will be read first.
        /// 

        private readonly Stack streams = new Stack();

        #endregion

        #region Constructors and Destructors

        /// 
        ///     Initializes a new instance of the  class with the default
        ///     encoding of UTF8.
        /// 

        public BinaryStreamStack()
            : this(Encoding.UTF8)
        {
        }

        /// 
        /// Initializes a new instance of the  class.
        /// 

        /// 
        /// The encoding to use for character based operations.
        /// 
        public BinaryStreamSt

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       14578  2013-02-18 22:55  BinaryStreamStack.cs
     文件        4209  2013-02-18 14:10  FilePart.cs
     文件        2272  2013-02-18 14:10  MultipartParseException.cs
     文件       30721  2013-02-18 22:57  MultipartParser.cs
     文件        2776  2013-02-18 14:10  ParameterPart.cs
     文件       13199  2013-02-18 21:22  RebufferableBinaryReader.cs
     文件        4834  2013-02-18 14:10  SubsequenceFinder.cs

评论

共有 条评论