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. Shell test 命令

    Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. 数值测试 参数 说明 -eq 等于则为真 -ne 不等于则为真 -gt 大于则为真 -ge 大于等于 ...

  2. 自学python之路(day6)

    一 函数的定义与调用 现在需要一个程序来实现len()的功能. 计算字符串 s 长度 s='好好学习' #函数的定义def my_len(): i = for k in s: i += print(i ...

  3. shell版的nginx安装

    #!/bin/bash # Name:Centos 6.4 安装nginx1.8.1 # Date:-- # Author:qifei@meizu.com Home=$(cd ``;pwd) #这个命 ...

  4. 关于手机ios和安卓和pc的点击事件的兼容

    var u = navigator.userAgent, app = navigator.appVersion; var clickEvent; var isAndroid = u.indexOf(' ...

  5. 多态 与 鸭子类型 duck duck duck

    # --> ''' 多态 与 鸭子类型 --> 什么是多态 对象的多种状态,父类对象的多种 (子类对象) 状态 --> 什么是鸭子类型: 长的像就是 1.规定有什么属性及什么方法的对 ...

  6. 面试中linux常见的20个命令

    1.查找文件 find / -name filename.txt 根据名称查找/目录下的filename.txt文件. 2.查看一个程序是否运行 ps –ef|grep tomcat 查看所有有关to ...

  7. 用python写一个名片管理系统

    info = [] #先定义一个空字典while True: #利用while循环 print(' 1.查看名片') #第一个选项 print(' 2.添加名片') #第二个选项 print(' 3. ...

  8. 解决centos7上system tools - setting无法打开的问题

    今天在centos7上安装中文输入法时,遇到system tools - setting无法打开的问题. 最后定位时libwbclient这个包无法查找到的原因. 问题显示如下: 可以使用以下方式安装 ...

  9. ODI Scenario 场景

    ODI中,场景的作用类似发布版本,当映射最终修改版完成时,可以生成场景.无论是映射(Mapping)还是包(Package)都可以生成场景. 包调用映射和调用场景的区别: 1,包直接调用映射,当映射修 ...

  10. Dictionary用法

    https://www.cgjoy.com/thread-106639-1-1.html 1.新建字典,添加元素  dictionary<string,string>dic=newdict ...