Linq开发笔记

Linq开发笔记


判断当前用户是否存在:

var exists1 = _dbSys.GetIQueryable<tb_MyUser>().Any(a => a.Account==input.SourceUser);
            if (!exists1) throw new BizException("来源用户不存在!");

linq 取天数范围:

q1.Where(w => (DateTime.Now - w.SendTime).Value.Days < days);

返回数据select:
注:当前模型存在链表的情况下需要先行ToList()之后再进行链表(因为GetIQueryable是转换sql之前,而new res_Permission_Role()属于自定义model并不存在数据库中,无法与EF模型对应关系,所以需要先转换为list在内存中)

var result = new res_Permission_GetOwnersByMenu();
result.ListRole = listRole.Select(s => new res_Permission_Role() { RoleID = s.RoleID, RoleName = s.RoleName }).ToList();

String.Compare字符串比较:

q1 = q1.Where(w => String.Compare(w.IANO, p.DocNoFrom) >= 0);

判断时间范围限制:

if (p.DocDateFrom>=DateTime.Now.AddYears(-100))
	{
		q1 = q1.Where(w => w.CreationDate >= p.DocDateFrom);
	}

获得字符串中开始和结束字符串中间得值:

/// <summary>
/// 获得字符串中开始和结束字符串中间得值
/// </summary>
/// <param name="str">要截取的字符串</param>
/// <param name="sta">开始字符</param>
/// <param name="end">结束字符</param>
/// <returns></returns> 
static string GetMiddleValue(string str, string sta, string end)
{
	Regex rg = new Regex("(?<=(" + sta + "))[.\\s\\S]*?(?=(" + end + "))", RegexOptions.Multiline | RegexOptions.Singleline);
	return rg.Match(str).Value;
}

食用方式:

string str = System.Configuration.ConfigurationManager.ConnectionStrings[Globals.testDB].ConnectionString.ToString();
            string userid = GetMiddleValue(str, "ID=", ";");
            string pwd = GetMiddleValue(str, "Password=", ";");
            string DataBase = string.Format($"server=.;Database='{dbName}';User ID='{userid}';Password='{pwd}';");

获取7天内数据:

string time = context.Request["Time"].ToString();
string times = context.Request["Times"].ToString();

if (time == "") { data.BeginTime = DateTime.Now.AddDays(-7); } else { data.BeginTime = Convert.ToDateTime(time); }
if (times == "") { data.EndTime = DateTime.Now; } else { data.EndTime = Convert.ToDateTime(times); }

代码生成器之保存using到数据库保留缩进:
{System.Environment.NewLine}

$"using Test.WebApi.Common.Models;{System.Environment.NewLine}using Test.WebApi.Interfaces;{System.Environment.NewLine}using Test.WebApi.Models;"

获取当前主机地址:

function getHost()
{
    获取当前网址,如: http://localhost:8080/Tmall/index.jsp
    let curWwwPath = window.document.location.href;

    //获取主机地址之后的目录如:/Tmall/index.jsp
    var pathName = window.document.location.pathname;
    let pos = curWwwPath.indexOf(pathName);

    //获取主机地址,如: http://localhost:8080
    var localhostPaht = curWwwPath.substring(0, pos);

    //return 'http://webapi.test.com/YaSuo/';
    return curWwwPath.substring(0, pos) + '/YaSuo/';
}

食用方式:

<script src="../Scripts/HostHelper.js"></script>
    var localhost= getHost();
	$("target").attr("href", localhost);
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值