自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 收藏
  • 关注

原创 C#使用iText7画发票PDF——字体与自定义颜色

itext7的字体与颜色的定义

2024-03-25 11:40:02 301

原创 Redis使用

reids

2023-10-16 11:08:27 270

原创 CilckHouse创建表

Clickhouse 创建MergeTree引擎数据表

2023-09-19 17:11:14 132

原创 Grpc自定义类型(含Decimal)

例如我要自定义DecimalValue类型,我的proto文件不能取名为decimalvalue或者Decimalvalue,因为proto文件生成上下类cs文件的时候,会自动将package命名的首字母大写,如果命名与要定义的类型同名,则里面的类型名定义会被自动加后缀,后期建立公共方法的时候就找不到了)我的customTypes.proto文件直接放在Proto文件夹下,如果你的存在别的文件夹,就写全就可以了,起始文件夹名称为项目下的一级目录。---------End结束-----------

2023-09-07 16:41:49 516

原创 WPF调用Grpc

区别:加GrpcServices="Server"会生成服务端的grpc的cs文件,不加GrpcServices="Server"则会在cs文件中生成服务端和客户端。如果创建proto文件时用了需要使用空参数和空返回值的协议文件,则客户端没法生成,所以直接用不加GrpcServices="Server"的生成,直接拿到客户端。2、如果服务端的服务引用没加GrpcServices=“Server”,则在服务端找到生成的cs类库,放在客户端的Grpc文件夹中。---------End结束----------

2023-09-05 19:26:05 321

原创 EF Linq和SqlSugar写法区别

这里是我上一篇提到过的,sqlsugar可以在查询字段的时候使用c#的写法string.IsNullOrEmpty(ea.UpdateTime),所以很多时候,sqlsugar写法更方便。1、查询(多表联查)

2023-06-02 11:05:15 791

原创 关于EF查询的问题

原因:string.IsNullOrEmpty(ea.UpdateTime)和string.Empty是.net后台代码的写法,在Linq to Sql的时候,镜像没法正确转换,但是三目运算是可以的,因为sql里面就可以用,所以就是sql语句不能用的,在Linq中也不能写。在项目中,使用EF的orm框架,但是EF的查询不支持像sqlsugar一样的写法。这个报错信息我一直以为是多表链接时候的问题报错,后来发现是字段查询用了string.IsNullOrEmpty()的原因。

2023-06-02 10:03:16 123

原创 子链接改左连接分组

查询曾用名为“无”的产品,且供应商数不为1的所有产品编码

2023-04-26 15:52:38 65

原创 WPF按钮回调事件

主页面(MainView.xaml)有录入按钮,点击录入按钮打开修改页面(UpdateView.xaml),修改完成以后,在修改页面Presenter层写完保存后关闭保存成功提示框并弹出详情页弹窗(SumQueryView.xaml),弹窗关闭后回到主页面,此时主页面无法正常刷新。在修改页面cs层保存按钮点击事件中,加上test()事件为主页面回调事件做触发。回到主页面cs层,打开修改页面之前,附加上test()事件并联动查询方法。在修改页面cs层定义一个全局公共事件test();

2023-03-31 10:53:08 305

原创 错误:由于ContractFilter在EndpointDispatcher不匹配,因此Action为<BtsActionMapping...的消息无法在接收方处理

由于 ContractFilter 在 EndpointDispatcher 不儿还,因此 Action 为http://tempuri.org/llnStoreReceiveGoodsService/PingZhengSave"的消息无注在接收方处理。这是由于原项目中,上传功能写在了另一个解决方案的项目中,所以服务也需要迁移,我把按钮功能迁移到当前解决方案的项目中,重写了代码以及服务。2、在iis中配置网站,将打包好的web发布在iis上,并启动网站。1、将提供服务的项目打包发布。

2023-03-30 16:53:12 1070

原创 关于c#小记

在项目中需要判断某个字段或参数数据是否为空时,使用string.IsNullOrEmpty(字段/参数)为了提高代码规范以及可读性和严谨性。

2023-03-29 14:44:42 30

原创 C#关于获取具有指定键的配置子节笔记

注:会返回null,若key为空,使用Directory.Exists会报错。对象AppSettingsSection包含配置文件appsettings的节的内容。使用此方法时确保Web.Config中包含key的值。注:此方法永远不返回null,可以直接用Directory.Exists进行判断,若未找到指定键的匹配子节点将 返回空的IConfigurationSettion(应用程序配置值的一节)获取当前应用程序默认配置的AppSettingsSection数据。获取具有指定键的配置子节点。

2023-03-29 14:39:45 133

原创 WPF图片旋转缩放

使用LayoutTransform自适应图片在box中的显示,图片太大时超出部份也能显示。上传图片后,实现点击图片旋转,滚动鼠标滚轮缩放图片。

2023-03-27 15:17:15 312

原创 WPF文本框无法输入小数点

在WPF项目中,文本框BInding双向绑定了数据Text=“{UpdateSourceTrigger=PropertyChanged}”,但手套数据是double类型,手动输入数据时,小数点输入不进去。

2023-03-27 15:02:49 807

原创 项目发布服务器后某些页面或者模板等打开报错问题

做打开打印模板的时候,原本文件里面是存在模板的,但是就是一直报这种错,提示找不到grf文件下的模板(如下)一直报找不到文件路径的错误。解决方法:在发布文件中把grf文件夹赋予everyone的权限在发布文件中把grf文件夹的network service账户也给个完全控制权限在iis网站里面加上MIME类型。同理,当发布项目后,本地测试都是对的,但外网用户要做某些操作被拦截时,可以看看是否赋予了network service账户的权限...

2022-04-13 10:37:03 145

原创 数据库死锁问题

查询哪些表被锁select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableNamefrom sys.dm_tran_locks where resource_type=‘OBJECT’根据被锁表名进程ID,解决死锁declare @spid intSet @spid = 140 --锁表进程declare @sql varchar(1000)set @sql='kill '+cas

2021-08-31 15:01:49 83

原创 c#语言与c/c++语言的区别

dotnet loverC#和C++语言使用方面的区别本人觉得C#是世界上最优美的语言,也可以说是一门傻瓜语言,入门成本低,上手快得到许多人的青睐,但是C#并没有在行业内得到大家的首肯,反倒是C/C++人才比较紧俏;本人在学习过程中将C#和C++语言使用方面的一些区别列举一下,方便理解学习和掌握这两门语言;如有错误欢迎纠正:1、函数返回值类型:C#里返回值基本上可以使任何类型,C++则不行,C++的函数返回值类型必须是除了函数和数组类型之外的其他任何类型。2、switch(参数类型):C#参数

2021-07-26 11:10:26 703

原创 .NET Core Docker使用

将讲解怎么在虚拟机上使用一、配置虚拟机1、打开VM虚拟机,创建虚拟机。这里创建的是虚拟服务器,所以不需要很大的内存,都用默认的就行了。注意:镜像文件为CentOS-7-x86_64-DVD-1708的;2、在root身份下,进入sysconfig/network-scripts命令:cd /etc/sysconfig/network-scripts3、ls查看文件夹,进入ifcfg-ens33文件夹,修改:ONBOOT=yes再重启网卡,命令:[root@localhost network-s

2021-07-01 19:10:08 952

原创 .net Core Grpc使用笔记

注意:使用计算机名称,目录不要出现任何中文 ,包括注释等,一点中文都有可能造成翻车http://tnblog.net/17726394069/article/details/6134)第一步:使用NuGet下载三个包(与上一篇.net Core使用一样) Microsoft.EntityFrameworkCore.SqlServer:Sql Server数据库EF提供程序 Microsoft.EntityFrameworkCore.Design:设计时EF共享库 Microsoft.Ent

2021-06-24 21:06:40 362

原创 EF Core用数据库反向生成上下文类时的报错解决办法

生成上下文类时,明明按照EF Core的使用一步一步来的,但运行NuGet控制台时老是报错;报错信息:Build failed:生成失败(数据库生成模型类的命令有问题)第二种报错:这个报错信息是指:建立与SQL Server的连接时发生与网络相关或特定于实例的错误。找不到或无法访问服务器。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接(提供程序:SNINu PN11,错误:26-定位服务器/指定实例时出错)通俗点讲就是:数据库拒绝远程连接解决方法:第一步:右击打开

2021-06-23 12:41:23 657

原创 EF Core数据库反向生成上下文类以及EF Core使用

1、使用NuGet包管理器下载Microsoft.EntityFrameworkCore相关包因为.NET Core中默认不包含EF Core的工具和程序包,需要通过NuGet管理器安装对应工具和程序包。这里使用Sql Server数据库,因此将安装以下程序包:Microsoft.EntityFrameworkCore.SqlServer:Sql Server数据库EF提供程序Microsoft.EntityFrameworkCore.Design:设计时EF共享库Microsoft.Entity

2021-06-23 11:56:12 895

原创 序列化类型为“System.Data.Entity.DynamicProxies.ActionInfo_”的对象时检测到循环引用

ajax请求去控制器的时候,数据出不来,浏览器F12检查报错信息为:序列化类型为“System.Data.Entity.DynamicProxies.ActionInfo_”的对象时检测到循环引用。查百度发现在模型查询前加上这条语句就可以了: db.Configuration.ProxyCreationEnabled = false;//序列化对象时检测到循环引用问题至于具体为什么,我也不晓得。查了百度我也不知道这句语句什么意思...

2021-06-19 14:22:01 194

原创 软件设计师考试之设计模式

各分类中模式的关键点单例模式:某个类只能有一个实例,提供一个全局的访问点。简单工厂:一个工厂类根据传入的参量决定创建出那一种产品类的实例。工厂方法:定义一个创建对象的接口,让子类决定实例化那个类。抽象工厂:创建相关或依赖对象的家族,而无需明确指定具体类。建造者模式:封装一个复杂对象的构建过程,并可以按步骤构造。原型模式:通过复制现有的实例来创建新的实例。适配器模式:将一个类的方法接口转换成客户希望的另外一个接口。组合模式:将对象组合成树形结构以表示“”部分-整体“”的层次结构。装饰模式:动

2021-05-23 16:11:13 675

原创 设计模式

各分类中模式的关键点单例模式:某个类只能有一个实例,提供一个全局的访问点。简单工厂:一个工厂类根据传入的参量决定创建出那一种产品类的实例。工厂方法:定义一个创建对象的接口,让子类决定实例化那个类。抽象工厂:创建相关或依赖对象的家族,而无需明确指定具体类。建造者模式:封装一个复杂对象的构建过程,并可以按步骤构造。原型模式:通过复制现有的实例来创建新的实例。适配器模式:将一个类的方法接口转换成客户希望的另外一个接口。组合模式:将对象组合成树形结构以表示“”部分-整体“”的层次结构。装饰模式:动

2021-05-23 16:10:11 51

原创 软件设计师概念之 耦合类型

耦合类型:(1) 内容耦合:如果发生下列情形,两个模块之间就发生了内容耦合1. 一个模块直接访问另一个模块的内部数据;2. 一个模块不通过正常入口转到另一模块内部;3.两个模块有一部分程序代码重迭**(只可能出现在汇编语言中)**;4.一个模块有多个入口。  (2) 公共耦合:若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等。  (3) 外部耦合: 一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不

2021-05-23 15:48:37 446

原创 后台管理系统之权限管理

需求描述:在一些后台管理系统中,每个身份登录的权限不一样,以至于配置的菜单不一样。就我做过的小区物业管理系统而言,举个例子:业主登录网站只能看到社区服务中的投诉、维修以及查看公告。而管理员可以看到一些对本小区的基本操作,例如查看楼栋,查看业主,账单催缴等等…而超级管理员,可以看到所有界面,以及处理一些审核等等一系列。那么这个时候,我们没必要每个身份做一个系统,而是通过权限管理,对每种身份做配置;以下为部分页面展示:①设置职位和权限:查看所有职位,以及对职位增删查改,“配置权限”是一个超链接,到另一个页

2021-05-23 14:05:53 6716 3

原创 关于MVC地址跳转(URL地址拦截)问题

一般在执行MVC项目时,常常会出现在地址栏中,直接输入控制器/操作方法实现跳过登录直接进去系统。但在实际工作或使用系统时,是不允许用户跳过登录界面直接进入后台系统的。这时,我们可以通过两种办法进行杜绝。过滤器和身份票据1、身份票据:1>在Web config中的<System.web>节点下添加:<authentication mode="Forms"> <froms loginUrl="初始/打回界面url" timeout="2880" />&l

2021-05-20 21:08:02 922 5

原创 谈谈SQL Server触发器?

触发器分为前触发器(Instead Of )和后触发器(after)前触发器就是在语句执行之前激活触发器,而后触发器就是在语句执行之后激活触发器。触发器是一种特殊的存储过程,是由事件来触发某个操作,这些事件包括INSERT语句、UPDATE语句和DELETE语句。当数据库系统执行这些事件时,会激活促发其执行相应的操作。触发器也可通过数据库中的相关表实现级联更改;触发器的主要作用是,实现由主键和外键所不能保证的复杂的参照完整性和数据一致性。他可以保证数据的正确性和逻辑,比如订单表中新增一条数据,对应

2021-05-13 20:10:07 404

原创 mvc区别于书上的修改操作

myModels.Entry(需要修改的表).state=System.Entity.EntityState.Modeified

2021-05-13 00:30:25 56

原创 MVC中下拉框中的值全在一张表中,用辅助标签成生下拉框

情景:当修改时,改班级下拉框,但班级没有单独的表,只能用学生信息中的班级填充,但学生信息中可能存在多个人来自同一个班级,所以需要分组①、DAL和BLL直接查询所有学生信息②、控制器中:var Stuclasss=StuBLL.GetStus().GroupBy(p=>p.StuClass).Select(p=>new {ClassID=p.Key,ClassName=p.Key});//后面映射的是放在下拉框中的datavaluefiled和datatextfildeViewBag.C

2021-05-13 00:25:07 104

原创 MVC分页代码

分页的功能可以用sql的存储过程完成,但实际上,在sql中生成的存储过程引用到EF模型中以后,也就是一个方法。那么,我们在项目中,在DAL层直接做成一个方法就可以了。效果(我做的每页显示1行):分页万能公式:(页码-1)*行数DAL层代码: /// <summary> /// 分页 /// </summary> /// <param name="pageSize">行数</param>

2021-05-10 14:46:56 236

原创 登录

在三层中,我们的DAL最好是每个方法都有重用性。例如查询,那么最好可以实现可以多种查询,修改也能多种查询,DAL每个方法最好只有一个,在BLL实现业务逻辑。打个比方:我有登录,同时登录成功后在列表要完成某个人的详情查询。那么这两个是可以只用一个DAL方法就能完成的,就是通过ID(或别的唯一键)去查询某个人,DAL是返回一个对象。那么BLL中查询详情的时候,在BLL可以直接调用DAL层的方法就可以了,也是直接返回一个对象。但登录的BLL方法则要加个条件判断,返回的是一个bool值。如下:...

2021-04-26 20:48:27 122

原创 条件查询

在asp.net webform中,怎么实现条件查询呢?我们可以在DAL层写这个方法:注意:返回的类型以及,要完成拼接查询,必须定义IQuertable类型的变量进行条件拼接

2021-04-26 20:41:00 45

原创 修改之图片上传

我们在做程序设计时,经常会遇到文件上传或图片上传,这里演示ASP.NET webform修改个人信息时,图片的上传;在页面中放入一个Image标签,一个FileUpload标签,一个按钮,按钮为上传;在上传按钮下编辑如下代码:protected void btnLogin_Click(object sender, EventArgs e) { //判断文件是否存在 if (FileUpload1.HasFile) {

2021-04-26 20:37:37 85

原创 筛选器——MVC中运用ajax完成条件筛选

在mvc程序设计当中,若采用ajax异步刷新的方式,最好采用筛选项的方式完成条件筛选,能够提高代码的严谨性实现过程:在视图中,给查询按钮绑定script点击事件,在点击事件中,运用ajax跳转到控制器的筛选项的SetFilterItems方法去除空格,返回到ajax的成功事件中,成功去空格则调用script的另一个GetsecList数据重载方法。在GetsecList方法中运用ajax跳转到控制器的GetContractSelectList方法,完成真正的查询。查询成功返回到ajax的成功事件里,在成

2021-04-26 20:04:07 329

原创 EF 一次性修改 批量修改

一次性修改:在NuGet程序包里安装EntityFramerwork.Extensions(同上一条帖子一样)添加引用using.EntityFramerwork.Extensions语句:db.Entry (对象名).State= System.Data.Entity.EntityState.Modified; db.SaveChanges();以上语法也可用于,只修改某个值,固定某些值不修改(常用于前端将所有值一键传给后台,但后台不修改这么多字段的情况)将上面的语句改成: db.Ent

2021-03-18 00:54:41 2588

原创 EF 批量添加

右键资源管理器,找到NuGet程序包,安装Z.EntityFramework.Extensions将要添加的数据放在list集合当中db.BulkInsert(list); db.SaveChanges();示例:using (DBClassEntities db = new DBClassEntities()){var list = new List<tb_Degree>();for (int i = 0; i < 5; i++){var dgr = new tb_.

2021-03-17 23:54:46 665

原创 ASP.net GridView分页

将GridView属性中的AllowPaging设为true。设置pagesize的大小(一页几行)打开PageIndexChanging事件,写入后台代码:this.Gridview1.PageIndex=e.NewPageIndex;bind();//绑定数据源

2021-03-02 17:25:33 111

原创 ASP.net 活性绑定数据库

进入UI界面的web.config配置文件中在配置文件中加入<connectionString>节点,在节点内写入:<add name="【根据自己意愿取名,例:aa】" connectionString=“【DBHelper类中的链接字符串】” providerName=“System.Data.SqlClient;” ./>在DAL中添加引用:System.configuration在DBHelper中将链接字符串改为:public static string con.

2021-03-02 17:18:01 92

原创 ASP.net中怎么设置Gridview分页

设置AllowPaging属性为true和PageSize属性的值在Gridview的PageIndexChanging事件中写入:protected void Gridview1_PageIndexChanging(object sender,GridviewPage EventArges e) { this.Gridview1.PageIndex=e.NewPageIndex;//设置显示用户选择的页面 bind(); .

2021-02-24 23:33:01 277

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除