首页 > 其他分享 >临时

临时

时间:2022-10-22 20:57:24浏览次数:32  
标签:临时 app db globalData result wbRequest data


在Common文件中创建BaseModel

    public class BaseModel<T> where T : class, new()
    {
        /// <summary>
        /// 获取上下文
        /// </summary>
        /// <returns>EF上下文</returns>
        public static DemoContext Create()
        {
            DemoContext db = CallContext.GetData("db") as DemoContext;
            if (db == null)
            {
                db = new DemoContext();
                CallContext.SetData("db", db);
            }
            return db;
        }

        /// <summary>
        /// 上下文
        /// </summary>
        DemoContext db = Create();

        /// <summary>
        /// 查询数据,IQueryable延迟加载集合,调用时才会去加载至内存,List查询后会立即加载至内存中
        /// </summary>
        /// <param name="whereLambda">查询条件</param>
        /// <returns>数据集合</returns>
        public IQueryable<T> GetList(Expression<Func<T, bool>> whereLambda)
        {
            return db.Set<T>().Where(whereLambda);
        }

        public int Add(T entity)
        {
            db.Set<T>().Add(entity);
            return db.SaveChanges();

        }

        public int Delete(int id)
        {
            //通过ID查询这条实体
            T entity = db.Set<T>().Find(id);
            db.Set<T>().Remove(entity);
            return db.SaveChanges();
        }

        public int Update(T entity)
        {
            //设置当前实体的状态为修改
            db.Entry(entity).State = System.Data.Entity.EntityState.Modified;
            return db.SaveChanges();
        }
    }

 在Common中创建HttpRequestHelper

    public class HttpRequestHelper
    {
        public static string HttpGet(string url)
        {
            string result = string.Empty;
            try
            {
                HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);
                wbRequest.Method = "GET";
                HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();
                using (Stream responseStream = wbResponse.GetResponseStream())
                {
                    using (StreamReader sReader = new StreamReader(responseStream))
                    {
                        result = sReader.ReadToEnd();
                    }
                }
            }
            catch (Exception ex)
            {

            }
            return result;
        }

        public static string HttpPost(string url, string paramData, Dictionary<string, string> headerDic = null)
        {
            string result = string.Empty;
            try
            {
                HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);
                wbRequest.Method = "POST";
                wbRequest.ContentType = "application/x-www-form-urlencoded";
                wbRequest.ContentLength = Encoding.UTF8.GetByteCount(paramData);
                if (headerDic != null && headerDic.Count > 0)
                {
                    foreach (var item in headerDic)
                    {
                        wbRequest.Headers.Add(item.Key, item.Value);
                    }
                }
                using (Stream requestStream = wbRequest.GetRequestStream())
                {
                    using (StreamWriter swrite = new StreamWriter(requestStream))
                    {
                        swrite.Write(paramData);
                    }
                }
                HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();
                using (Stream responseStream = wbResponse.GetResponseStream())
                {
                    using (StreamReader sread = new StreamReader(responseStream))
                    {
                        result = sread.ReadToEnd();
                    }
                }
            }
            catch (Exception ex)
            { }
            return result;
        }
    }

 

 

 

全局变量globalData在app.js页面和其他js页面调用与修改问题

全局变量globalData

小程序中js页面声明的变量与函数只能在此页面中使用,并且在不同页面中可以用相同的变量命名。而如果想要某些数据在所有页面中都能使用,那就可以使用全局变量globalData进行数据的存取。globalData在app.js中进行设置。

//app.js文件
App({
  //在小程序完成初始化时,触发onLaunch(全局只触发一次)
  // Do something initial when launch.
  onLaunch(options) {

  },
  //全局变量
  globalData: {
    Info: 12,
    newsList: [{}]
  }
})

一、app.js页面中globalData变量的修改

1、在app.js页面中要修改globalData变量的值,如果直接在onLaunch: function () 函数中修改,只需要用this调用globalData进行修改。

this.globalData.Info = 15;
console.log(this.globalData.Info) //15

2、若使用了请求wx.request等 则需要使用 var that = this,然后用that调用globalData。

//app.js文件
App({
  //在小程序完成初始化时,触发onLaunch(全局只触发一次)
  // Do something initial when launch.
  onLaunch(options) {
    //请求信息
    var that = this;
    wx.request({
      url: 'https:', //此处略
      data: {
        x: "",
        y: ""
      },
      success: function (res) {
        console.log(res.data);
        let list = [];
        for (var i = 0; i < 4; i++) {
          let obj = {};
          obj.id = res.data.result.data[i].uniquekey;
          obj.title = res.data.result.data[i].title;
          obj.date = res.data.result.data[i].date;
          obj.url = res.data.result.data[i].url;
          obj.poster = res.data.result.data[i].thumbnail_pic_s;
          list.push(obj);
        }
        that.globalData.newsList = list;
      }
    })
  },
  //全局变量
  globalData: {
    Info: 12,
    newsList: [{}]
  }
})

二、其他js页面中globalData变量的读取和修改

当需要在其他页面读取和修改globalData中的数据时,需要用var app = getApp()进行引用

1、读取

var app = getApp(); //声明app实例
Page({
  onl oad: function () {
    console.log(app.globalData.Info);
  }
})

2、修改数据

var app = getApp();
Page({
  onl oad: function () {
    app.globalData.Info = 22;
  }
})

 

标签:临时,app,db,globalData,result,wbRequest,data
From: https://www.cnblogs.com/shiliumu/p/16817257.html

相关文章

  • PostgreSQL两种临时表介绍
    PostgreSQL两种临时表:一种基于会话级的临时表;一种是事务级的临时表。PG的版本及当前user:postgres=#selectversion();                        ......
  • Mysql 系列 | 性能优化 - 紧急临时处理
    在实际开发过程中,业务高峰期常遇到Mysql响应变慢。为了不影响业务,要在短时间内临时提升性能。短链接原因分析短链接是连接数据库后,执行很少的SQL后就断开,下次需......
  • 从一张表中提取信息填充入临时表
    <spanstyle="color:#ffffff">insertintot_temp(id,name,card_no)selectreplace(UUID(),"-","")asid,real_nameasname,id_card_noascard_nofromt_memberwhere......
  • 当今市场上 最佳假电子邮件生成器 临时邮箱
    如果您想发现世界上最好的假邮件生成器,那么您来对地方了。我们对它们进行了测试和审查,以便为您提供一些重要的选择建议。什么是假邮件生成器?假邮件生成器是一种工具,可让......
  • P2392 kkksc03考前临时抱佛脚
    P2392一道有点意思的题......对于每一科的作业,左右脑各可以解决一门,最后取花费时间较长的作为全部解决完该科作业的答案,计sum为该科作业时间总和,所以当左右脑各花费sum/......
  • 主库添加临时表空间 dg端只会同步临时表空间
    文档课题:主库添加临时表空间,dg端会同步临时表空间的添加验证.系统:centos7.964位数据库:oracle11.2.0.464位环境:rac(双节点)+dg主库操作:SQL>createtemporarytablesp......
  • 创建临时表
    关于创建全局临时表全局临时表的元数据对多个用户及其会话可见,但其内容是会话本地的。例如,假设基于Web的航空公司预订应用程序允许客户创建多个可选行程。每个行程都由......
  • 临时表概述
    临时表保存仅在事务或会话期间存在的数据 。临时表中的数据是会话私有的。每个会话只能查看和修改自己的数据。可以创建全局临时表或私有临时表。下表显示了它们之间的......
  • 缩小本地管理的临时表空间
    您可以收缩本地管理的临时表空间并释放未使用的空间。数据库执行的大型排序操作可能会导致临时表空间增长并占用大量磁盘空间。排序操作完成后,多余的空间不会被释放;它只......
  • Vm无法连接到虚拟机,请确保您有权限运行该程序、访问该程序使用的所有目录以及访问所有
    可能是杀掉进程导致解决办法:1.首先杀掉所有VM打头的任务。2.删掉所有lck文件3.VM文件夹内有一串很长的数字命名的文件夹或文件,删掉4.发现被VMware-vmx.exe占用5.打开......