Routemanage类方法详解
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类方法详解的更多相关文章
- 第7.15节 Python中classmethod定义的类方法详解
第7.15节 Python中classmethod定义的类方法详解 类中的方法,除了实例方法外,还有两种方法,分别是类方法和静态方法.本节介绍类方法的定义和使用. 一. 类方法的定义 在类中定 ...
- IOS NSBundle 的理解和 mainBundle 类方法详解
常看到类似的 NSString *file = [[NSBundle mainBundle] pathForResource:name ofType:nil]; 这样的代码,用来获取 file 的完全 ...
- JAVA中Object类方法详解
一.引言 Object是java所有类的基类,是整个类继承结构的顶端,也是最抽象的一个类.大家天天都在使用toString().equals().hashCode().waite().notify() ...
- JAva Collections类方法详解
http://blog.csdn.net/lskyne/article/details/8961014 Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素 ...
- Collections类方法详解
Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序.搜索以及线程安全等各种操作. 1) 排序(Sort)使用sort方法可以根据元素的自然顺序 对 ...
- (转)Collections类方法详解
Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序.搜索以及线程安全等各种操作. 1) 排序(Sort)使用sort方法可以根据元素的自然顺序 对 ...
- 第7.16节 案例详解:Python中classmethod定义的类方法
第7.16节 案例详解:Python中classmethod定义的类方法 上节介绍了类方法定义的语法以及各种使用的场景,本节结合上节的知识具体举例说明相关内容. 一. 案例说明 本节定义的一个 ...
- 李洪强iOS经典面试题156 - Runtime详解(面试必备)
李洪强iOS经典面试题156 - Runtime详解(面试必备) 一.runtime简介 RunTime简称运行时.OC就是运行时机制,也就是在运行时候的一些机制,其中最主要的是消息机制. 对于C ...
- mina框架详解
转:http://blog.csdn.net/w13770269691/article/details/8614584 mina框架详解 分类: web2013-02-26 17:13 12651人 ...
随机推荐
- Java探针
使用java代理来实现java字节码注入 使用JavaSsist可以对字节码进行修改 使用ASM可以修改字节码 使用Java代理和ASM字节码技术开发java探针工具可以修改字节码 备注:javass ...
- Android使用Fiddler模拟弱网络环境测试
原文:https://blog.csdn.net/u010618194/article/details/76652513 1.设置fiddler 顶部Tools-->Connections,把p ...
- 认识enum
今天在看别人代码的时候发现他的使用enum的方法,我是不会用的,因此记录一下. 这个是一个语音合成,今天改为使用百度的语音,可以免费支持离线.在线. 在语音合成的使用,会使用许多的词句让其合成语音,用 ...
- Problem: Time(一道水却有意思的题
Problem Description Digital clock use 4 digits to express time, each digit is described by 3*3 chara ...
- svg 动画 透明度 放大缩小 x轴Y轴
参考链接:https://www.cnblogs.com/Chrimisia/p/6670303.html vue 中封装svg:http://www.cnblogs.com/Jiangchuanwe ...
- xterm配置
最近转到i3wm桌面下, 发现调用xfce4-terminal有些慢,索性卸载掉一切所谓高级的终端,使用xterm,其实这个才是更牛的家伙. 安装 apt install xterm in i3-wm ...
- vue.js 精学组件记录
组件需要注册后才可以使用. Vue.component('my-component',{ template:'<div>这是组件内容</div>' }): 局部注册组件 var ...
- Unity攻略
Unity开发VR之Vuforia 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...
- ionic2简单分析
Angular2是一个全新的框架,它从ReactJS以及其他web移动框架借鉴了不少经验和优点,巨大的改进使得开 发体验和性能已经超越了Angular1,而且Ionic2无论是从UI交互效果和跨平台的 ...
- concat_ws 使用在hive spark-sql上的区别
concat_ws() 在hive中,被连接对象必须为string或者array<string>,否则报错如下: hive> select concat_ws(',',unix_ti ...