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. Nginx原理

    原理机制 Nginx采用多进程(每个worker进程只对应一个线程)和I/O多路复用机制,实现并发的事件驱动处理: 多路复用即通过一种机制监视多个文件描述符,一旦文件描述符就绪(读写就绪),就可通知程 ...

  2. cafee编译错误几个总结

    1.CXX/LD -o .build_release/examples/siamese/convert_mnist_siamese_data.bin .build_release/lib/libcaf ...

  3. pytest自动化2:测试用例setup和teardown

    前言: pytest支持函数和类两种用例方式,针对每种情况都有不同的代码 pytest用例运行级别 模块级(setup_module/teardown_module)开始于模块始末,全局的 函数级(s ...

  4. nim读写注册表的小例子

    nim读写注册表的小例子 2018年5月7日 15:11:58 codegay 贴一个nim读写注册表的例子,虽然简单,但是nim官方没有写windows注册表相关的文档, 我贴的例子兴许能帮大家省点 ...

  5. Mysql基础教程-Mysql的字符集查看与修改

    Show variables like “%char%”修改mysql的字符集----数据库级1)临时的修改Set global character-set_server=utf82)永久修改Alte ...

  6. Groovy学习笔记-陷阱

    1.def和in是关键字 2.==映射到了equals() 中,如果有Comparable接口实现,则优先compareTo str1 = 'hello' str2 = str1 str3 = new ...

  7. Knut重排算法

    /// <summary> /// 这是Knut重排算法的实现 /// </summary> /// <param name="number"> ...

  8. 怎么在Mac中的Safari查看网页源码

    一般情况下,Safari中右键是没有查看网页源文件这个选项的: 但是通过设置是可以看到的~ 1.首先找到电脑左上角的Safari然后选择偏好设置: 2.接着选择 “高级”页签,勾选最下面的 “在菜单栏 ...

  9. AI之旅(6):神经网络之前向传播

    前置知识   求导 知识地图   回想线性回归和逻辑回归,一个算法的核心其实只包含两部分:代价和梯度.对于神经网络而言,是通过前向传播求代价,反向传播求梯度.本文介绍其中第一部分. 多元分类:符号转换 ...

  10. jmeter 写正则表达式

    ():括起来的部分就是要提取的. .:匹配任何字符串. +:一次或多次. ?:不要太贪婪,在找到第一个匹配项后停止.   需要根据要取的数据取值 jt: eyJhbGciOiJSUzI1NiJ9.ey ...