在config配置文件添加iis的Mime类型,检测文件中是否存在添加语句,使用xml解析方法

来源:互联网 发布:linux查看用户组信息 编辑:程序博客网 时间:2024/05/21 06:22
using System.Xml;<span style="color:#ff6666;">要是使用xnl方法必须引用这里</span>
<pre name="code" class="html">string extensionMimeType 此处的string 为.apk或者别的mime类型
<pre name="code" class="html">IIsVersion iisVersion 此处为iis 的版本
 <!--配置文件上传参数 -->  <system.webServer>    <security>      <requestFiltering>        <requestLimits maxAllowedContentLength="2072576000" />      </requestFiltering>    </security>        <staticContent>            <remove fileExtension=".mp4" />            <remove fileExtension=".apk" />            <remove fileExtension=".json" />            <span style="color:#993399;"><mimeMap fileExtension=".apk" mimeType="application/vnd.android.package-archive" />            <mimeMap fileExtension=".json" mimeType="text/application" />            <mimeMap fileExtension=".mp4" mimeType="application/octet-stream" /></span>
<span style="color:#993399;">检测的这里!!!</span>        </staticContent>  </system.webServer>
        /// <summary>        /// 检查MIME        /// </summary>        /// <returns></returns>        public override bool CheckMimeType(DirectoryEntry entry, string extensionMimeType, IIsVersion iisVersion)        {            XmlDocument xmlDoc = new XmlDocument();            string appStartupPath = System.AppDomain.CurrentDomain.BaseDirectory;            xmlDoc.Load(appStartupPath + "components\\web\\bedserver\\web.config");//获取配置文件存放的位置            XmlNodeList root = xmlDoc.SelectNodes("/configuration/system.webServer/staticContent");            if (root != null)            {                foreach (XmlNode studentNode in root)                {                    if (extensionMimeType.Equals(".apk"))                    {                        if (studentNode.InnerXml.Contains("<mimeMap fileExtension=\".apk\" mimeType=\"application/vnd.android.package-archive\" />"))                        {                            return true;                        }                        else                        {                            return false;                        }                    }                    else if (extensionMimeType.Equals(".json"))                    {                        if (studentNode.InnerXml.Contains("<mimeMap fileExtension=\".json\" mimeType=\"text/application\" />"))                        {                            return true;                        }                        else                        {                            return false;                        }                    }                    else if (extensionMimeType.Equals(".mp4"))                    {                        if (studentNode.InnerXml.Contains("<mimeMap fileExtension=\".mp4\" mimeType=\"application/octet-stream\" />"))                        {                            return true;                        }                        else                        {                            return false;                        }                    }                    else                    {                        return false;                    }                }                return false;            }            else            {                return false;            }        }

0 0