using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Web; namespace JCBJ.Route
{
/// <summary>获取相应域名下静态资源文件管理</summary>
public class RouteManage
{
private static DebugFlag debugOnline; /// <summary>
/// 开关,是否开启本地调试online资源
/// </summary>
public static bool DebugSwitch { get; set; } private static DebugFlag checkDebugFlag()
{
if (!DebugSwitch)
DebugSwitch = HttpContext.Current.Request.Url.Host != "localhost"; switch (DebugSwitch)
{
case true:
debugOnline = DebugFlag.online;
break;
case false:
debugOnline = DebugFlag.local;
break;
} return debugOnline; } /// <summary> 获取相应域名下的样式文件 </summary>
/// <param name="domainName">当前域名(DomainFlag枚举)</param>
/// <param name="CSSName">样式文件名称,支持多个文件用逗号分隔,不用扩展名</param>
/// <returns></returns>
public static Dictionary<string, string> CSS(DomainFlag domainName, string CSSName)
{
string[] _CSSName = CSSName.Split(',');
Dictionary<string, string> cssUrl = new Dictionary<string, string>();
for (int i = ; i < _CSSName.Length; i++)
{
cssUrl.Add(_CSSName[i], DomainAddress.Static + "/" + checkDebugFlag() + "/" + domainName.ToString() + "/css/" + _CSSName[i] + ".css");
}
return cssUrl;
} /// <summary>获取相应域名下的JS文件</summary>
/// <param name="domainName">当前域名(DomainFlag枚举)</param>
/// <param name="JSName">JS文件名称,支持多个文件用逗号分隔,不用扩展名</param>
/// <returns></returns>
public static Dictionary<string, string> Script(DomainFlag domainName, string JSName)
{
string[] _JSName = JSName.Split(',');
Dictionary<string, string> JSUrl = new Dictionary<string, string>();
for (int i = ; i < _JSName.Length; i++)
{
JSUrl.Add(_JSName[i], DomainAddress.Static + "/" + checkDebugFlag() + "/" + domainName.ToString() + "/scripts/" + _JSName[i] + ".js");
}
return JSUrl;
} /// <summary>获取公共JS文件</summary>
/// <param name="JSName">JS文件名称,支持多个文件用逗号分隔,不用扩展名</param>
/// <returns></returns>
public static Dictionary<string, string> PubScript(string JSName)
{
string[] _JSName = JSName.Split(',');
Dictionary<string, string> JSUrl = new Dictionary<string, string>();
for (int i = ; i < _JSName.Length; i++)
{
JSUrl.Add(_JSName[i], DomainAddress.Static + "/scripts/" + _JSName[i] + ".js");
}
return JSUrl;
} /// <summary>获取公共资源文件</summary>
/// <param name="filePath">文件路径</param>
/// <param name="fileName">要引用的文件,带后缀</param>
/// <returns></returns>
public static Dictionary<string, string> PubScript(string filePath, string fileName)
{
// filePath: /Scripts/Arale/artDialog/css/
// fileName: ui-dialog.css
string[] _FileName = fileName.Split(',');
Dictionary<string, string> fileUrl = new Dictionary<string, string>();
for (int i = ; i < _FileName.Length; i++)
{
fileUrl.Add(_FileName[i], DomainAddress.Static + filePath + _FileName[i]);
}
return fileUrl;
} /// <summary> 获取相应域名下的图片文件</summary>
/// <param name="domainName">当前域名(DomainFlag枚举)</param>
/// <param name="imgName">图片文件名且带扩展名,支持多个文件用逗号分隔</param>
/// <returns></returns>
public static Dictionary<string, string> Image(DomainFlag domainName, string imgName)
{
string[] _imgName = imgName.Split(','); Dictionary<string, string> imgUrl = new Dictionary<string, string>();
for (int i = ; i < _imgName.Length; i++)
{
imgUrl.Add(_imgName[i], DomainAddress.Static + "/" + checkDebugFlag() + "/" + domainName.ToString() + "/Images/" + _imgName[i]);
}
return imgUrl;
} /// <summary> 获取相应域名下的静态页面 </summary>
/// <param name="domainName">当前域名(DomainFlag枚举)</param>
/// <param name="htmlName">页面文件名且带扩展名</param>
/// <returns></returns>
public static Dictionary<string, string> Html(DomainFlag domainName, string htmlName)
{
string[] _htmlName = htmlName.Split(',');
Dictionary<string, string> htmlUrl = new Dictionary<string, string>();
for (int i = ; i < _htmlName.Length; i++)
{
htmlUrl.Add(_htmlName[i], DomainAddress.Static + "/" + checkDebugFlag() + "/" + domainName.ToString() + "/html/" + _htmlName[i]);
}
return htmlUrl;
} /// <summary>根据文件类型获取upload资源文件</summary>
/// <param name="imgUrl">文件路径</param>
/// <param name="imgType">文件类型</param>
/// <returns></returns>
public static string UploadFile(string imgUrl, ImgTypeFlag imgType)
{
string[] imgName = imgUrl.Split('/');
string _imgUrl = DomainAddress.Static + "/UploadFile";
string imgname = "default.jpg";
if (imgName[imgName.Length - ] != null && !imgName[imgName.Length - ].Equals(""))
{
imgname = imgName[imgName.Length - ];
}
switch (imgType)
{
case ImgTypeFlag.license:
_imgUrl += "/license";
break;
case ImgTypeFlag.logo:
_imgUrl += "/logo";
break;
case ImgTypeFlag.pic:
_imgUrl += "/pic";
break;
}
_imgUrl += "/" + imgname; return _imgUrl; }
}
}

Routemanage类方法详解的更多相关文章

  1. 第7.15节 Python中classmethod定义的类方法详解

    第7.15节  Python中classmethod定义的类方法详解 类中的方法,除了实例方法外,还有两种方法,分别是类方法和静态方法.本节介绍类方法的定义和使用. 一.    类方法的定义 在类中定 ...

  2. IOS NSBundle 的理解和 mainBundle 类方法详解

    常看到类似的 NSString *file = [[NSBundle mainBundle] pathForResource:name ofType:nil]; 这样的代码,用来获取 file 的完全 ...

  3. JAVA中Object类方法详解

    一.引言 Object是java所有类的基类,是整个类继承结构的顶端,也是最抽象的一个类.大家天天都在使用toString().equals().hashCode().waite().notify() ...

  4. JAva Collections类方法详解

    http://blog.csdn.net/lskyne/article/details/8961014 Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素 ...

  5. Collections类方法详解

    Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序.搜索以及线程安全等各种操作. 1) 排序(Sort)使用sort方法可以根据元素的自然顺序 对 ...

  6. (转)Collections类方法详解

    Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序.搜索以及线程安全等各种操作. 1) 排序(Sort)使用sort方法可以根据元素的自然顺序 对 ...

  7. 第7.16节 案例详解:Python中classmethod定义的类方法

    第7.16节  案例详解:Python中classmethod定义的类方法 上节介绍了类方法定义的语法以及各种使用的场景,本节结合上节的知识具体举例说明相关内容. 一.    案例说明 本节定义的一个 ...

  8. 李洪强iOS经典面试题156 - Runtime详解(面试必备)

    李洪强iOS经典面试题156 - Runtime详解(面试必备)   一.runtime简介 RunTime简称运行时.OC就是运行时机制,也就是在运行时候的一些机制,其中最主要的是消息机制. 对于C ...

  9. mina框架详解

     转:http://blog.csdn.net/w13770269691/article/details/8614584 mina框架详解 分类: web2013-02-26 17:13 12651人 ...

随机推荐

  1. jmeter的学习路线

  2. 北大poj- 1013

    Counterfeit Dollar Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 50515   Accepted: 15 ...

  3. 编译原理子cygwin的使用

    目的:熟悉cygwin环境的使用,学习使用lex写简单的词法分析程序,会在cygwin环境下使用flex调试lex写的程序 内容:使用cygwin下的flex工具将exam1.l和exam2.l编译并 ...

  4. HslCommunication组件库使用说明 (转载)

    一个由个人开发的组件库,携带了一些众多的功能,包含了数据网络通信,文件上传下载,日志组件,PLC访问类,还有一些其他的基础类库. nuget地址:https://www.nuget.org/packa ...

  5. vue+koa实现简单的图书小程序(2)

    记录一下实现我们图书的扫码功能: https://developers.weixin.qq.com/miniprogram/dev/api/scancode.html要多读文档 scanBook () ...

  6. 《转》:JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解

    原链接:https://my.oschina.net/feichexia/blog/196575 现实企业级Java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError,内存不足 ...

  7. 微信小程序页面跳转,带参数跳转

    1.  wx.navigateTo  (保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面.) 路径:只能跳转非tabbar路径 参数:  'path?key=v ...

  8. LSC问题(不连续问题)

    转载:http://blog.csdn.net/v_JULY_v/article/details/6110269 本文是动态规划算法中,网上写得最好的一个之一.看完很容易理解.需要重点理解的部分,我会 ...

  9. [转]How to Send Ethereum with Web3.js and Node

    原文:https://davekiss.com/ethereum-web3-node-tutorial/   Ethereum took the web and cryptocurrency worl ...

  10. 小程序视频播放组件video

    最近在做一个视频播放的功能,要求如下: 1.实现视频的全屏播放: 2.实现视频相关信息的展示: 3.实现视频滑动上下切换效果: 肯定选择用原生组件video了,真是不用不知道,一用都是坑: 首先,组件 ...