zoukankan      html  css  js  c++  java
  • 饿补基础知识

    一、Server.MapPath的用法

          1).Server.MapPath("./")   当前目录

          2).Server.MapPath("/")    网站主目录

          3).Server.MapPath("../")  上层目录

          4).Server.MapPath("~/")  网站虚拟目录

          5).控制台程序获取:string path = Environment.CurrentDirectory.ToLower().Replace("bin\debug","")

    二、获取文件后缀

         System.IO.Path.GetExtension

    三、NPOI组件的用法(将excel转化为DataTable)

    四、ToDictionary、ToLookup和Linq

    五、js替换指定的url参数,没有则添加,有则修改

         function replaceParamVal(paramName, replaceWith) {

           var oUrl = this.location.href.toString();
           var nUrl = oUrl;
           var re1 = eval('/(&' + paramName + '=)([^&]*)/gi');
           var re2 = eval('/(\?' + paramName + '=)([^&]*)/gi');
           if (re1.test(oUrl)) {
                nUrl = oUrl.replace(re1, "&" + paramName + '=' + replaceWith);
           } else if (re2.test(oUrl)) {
                nUrl = oUrl.replace(re2, "?" + paramName + '=' + replaceWith);
          }
          else {
               if (oUrl.indexOf("?") != -1) {
                    nUrl += "&"+paramName+"="+replaceWith;
              } else {
                    nUrl += "?" + paramName + "=" + replaceWith;
             }
        }

        this.location = nUrl;
    }

    六、js 滚动条滚动到底部

        $(window).scroll(function(){

      var scrollTop = $(this).scrollTop();
      var scrollHeight = $(document).height();
      var windowHeight = $(this).height();
      if(scrollTop + windowHeight == scrollHeight){
        alert("you are in the bottom");
      }
      });
    七、json对象转字符串:JSON.stringify(jsonObj)  json字符串转json对象 JSON.parse(jsonStr)
    八、输出Excel
            /// <summary>
            /// 输出Excel
            /// </summary>
            /// <param name="workBook"></param>
            /// <param name="fileName"></param>
            /// <param name="contentEncode"></param>
            public static void Export(IWorkbook workBook, string fileName)
            {
                MemoryStream ms = new MemoryStream();
                workBook.Write(ms);
                HttpResponse httpResponse = HttpContext.Current.Response;
                httpResponse.AddHeader("Pragma", "public");
                httpResponse.AddHeader("Cache-Control", "max-age=0");
                httpResponse.AddHeader("Content-Disposition", string.Format("attachment;filename={0}", fileName));
                //httpResponse.AddHeader("content-type", "application/x-msdownload");
                httpResponse.ContentEncoding = Encoding.UTF8;
                httpResponse.ContentType = "application/vnd.ms-excel";
                httpResponse.BinaryWrite(ms.ToArray());
                workBook = null;
                ms.Close();
                ms.Dispose();
            }
    

    九、判断值是否为指定类型

           System.ComponentModel.TypeDescriptor.GetConverter(item.Type).ConvertFrom(dr[item.Key].ToString()); 

    十、动态拼接json

    //递归构建json
            static string RecursionMosaicJson(List<ExportsOrderInterfaceFieldVM> fieldList)
            {
                StringBuilder sb = new StringBuilder("{");
    
                foreach (var field in fieldList)
                {
                    if (parentKeyList.Contains(field.ParentID))
                    {
                        continue;
                    }
    
                    if (field.ObjectType == InterfaceObjectType.Array.ToString())
                    {
                        List<ExportsOrderInterfaceFieldVM> list = fieldAllList.Where(l => l.ParentID == field.Id).ToList();
                        string childrenJson = RecursionMosaicJson(list);
                        parentKeyList.Add(field.Id);
                        sb.AppendFormat(""{0}":[{1}],", field.InterfaceFieldName, childrenJson);
                    }
                    else if (field.ObjectType == InterfaceObjectType.Object.ToString())
                    {
                        sb.AppendFormat(""{0}":"",", field.InterfaceFieldName);
                    }
                }
    
                string json = sb.ToString().TrimEnd(',');
                json += "}";
    
                return json;
            }
    

    十一、动态拼接xml

            //递归构建xml
            static string RecursionMosaicXml(List<ExportsOrderInterfaceFieldVM> fieldList)
            {
                StringBuilder sb = new StringBuilder("");
    
                foreach (var field in fieldList)
                {
                    if (parentKeyList.Contains(field.ParentID))
                    {
                        continue;
                    }
    
                    //xml中的属性
                    List<ExportsOrderInterfaceFieldVM> attributeList = fieldAllList.Where(l => 
                        l.XMLElementType == XmlElementType.Attribute.ToString() 
                        && l.ParentID == field.Id).ToList();
                    string attrXml = "";
                    if (attributeList.Count > 0)
                    {
                        foreach (var attr in attributeList)
                        {
                            attrXml += " " + attr.InterfaceFieldName + "=""";
                        }
                    }
    
                    if (field.ObjectType == InterfaceObjectType.Array.ToString())
                    {
                        List<ExportsOrderInterfaceFieldVM> list = fieldAllList.Where(l => l.ParentID == field.Id
                            && l.XMLElementType!=XmlElementType.Attribute.ToString()).ToList();
                        string childrenXml = RecursionMosaicXml(list);
                        parentKeyList.Add(field.Id);
                        sb.AppendFormat("<{0}{2}>{1}</{0}>", field.InterfaceFieldName, childrenXml,attrXml);
                    }
                    else if(field.ObjectType == InterfaceObjectType.Object.ToString())
                    {
                        sb.AppendFormat("<{0}{1}></{0}>", field.InterfaceFieldName, attrXml);
                    }
                }
    
                string xml = sb.ToString();
    
                return xml;
            }

     十二、不常用时间转换

    //源格式 字符串转为时间 20170709023945000-0700
                    string refreshTokenTimeout = model.refresh_token_timeout;
                    DateTime dt = DateTime.ParseExact(refreshTokenTimeout, "yyyyMMddHHmmssfffzz00", new CultureInfo("en-GB"));
    //源格式 时间转化为字符串
    string time = DateTime.Now.ToString("yyyyMMddHHmmssfffzz00");
  • 相关阅读:
    第19章_枚举:
    第14章_类型信息:
    第13章_字符串:
    纯css背景图自适应
    事务隔离机制_悲观锁_乐观锁
    hibernate 缓存
    list 和 iterate
    hibernate 性能优化之 1+N 问题
    QBC(Query By Criteria) QBE (Query By Example)
    HQL(Hibernate Query Language)
  • 原文地址:https://www.cnblogs.com/ITanyx/p/5874488.html
Copyright © 2011-2022 走看看