置百丈玄冰而崩裂,掷须臾池水而漂摇。
ASP.NET

C#中lock集合后foreach报集合改变错误

错误表现:

多线程中,操作集合(Queue),已经lock集合了,中间使用了一次foreach循环,系统不定时报错


原因分析

foreach循环中,如果集合发送变化,就会报错.


分析解决:

1.测试lock在集合中是否不可用

代码:

强强 2023/2/6 0评论

数据库

设置 SQL Server占用服务器内存

问题现象:

数据库服务器内存居高不下,64G的内存,几乎被占用100%,结果差点把服务器给拖垮了。


分析:

SQL Server对服务器内存的使用策略是有多少内存就占用多少内存,只用在服务器内存不足时,才会释放一点占用的内存,所以SQL Server 服务器内存往往会占用很高。

这些内存一般都是SQL Server运行时候用作缓存的:

1. 数据缓存:执行个查询语句,SQL Server会将相关的数据页(SQL Server操作的数据都是以页为单位的)加载到内存中来, 下一次如果再次请求此页的数据的时候,就无需读取磁盘了,大大提高了速度。 

强强 2023/1/29 0评论

PACS业务知识

常见影像科室设备类型

常见影像科室设备类型

 

设备类型编码描述
计算机断层摄影(CT)CT计算机断层摄影
数字化X射线摄影(DX)DX数字化X射线摄影
计算机放射成像(CR)CR计算机放射成像
普通显微镜(GM)GM普通显微镜
数字减影心血管造影术(DSA)DSA数字减影心血管造影术
X光血管造影(XA)XAX光血管造影
内窥镜(ES)ES内窥镜
X线成像(RG)RGX线成像
全景X光(PX)PX全景X光
核医学(NM)NM核医学
超声(US)US超声
乳房X光成像(MG)MG乳房X光成像
透视摄影(RF)RF透视摄影
数字化X射线摄影(DR)DR数字化X射线摄影
正电子发射断层摄影(PT)PT正电子发射断层摄影
电子心电图(ECG)ECG电子心电图
磁共振血管造影(MA)MA磁共振血管造影
磁共振(MR)MR磁共振


强强 2023/1/17 0评论

ASP.NET

ASP.NET轻量级MVC框架Nancy使用

Nancy是一个轻量级的MVC框架,也可以完全脱离IIS.

下面是官网的一些介绍:

Nancy 是一个轻量级用于构建基于 HTTP 的 Web 服务,基于 .NET 和 Mono 平台,框架的目标是保持尽可能多的方式,并提供一个super-duper-happy-path所有交互。

Nancy 设计用于处理 DELETE, GET, HEAD, OPTIONS, POST, PUT和 PATCH 等请求方法,并提供简单优雅的 DSL 以返回响应。让你有更多时间专注于你的代码和程序。

强强 2023/1/5 0评论

RIS系统

历史数据 查询方式

-- =============================================
-- Author:<Author,,Name>
-- Create date: <Create Date,,>
-- Description:<Description,,>
-- =============================================
CREATE PROCEDURE [dbo].[Pro_HisPatient](
@REQ_PROCNO  uniqueidentifier,
@hospitalno nvarchar(64)=null
 )
AS
BEGIN 
SET NOCOUNT ON;
declare @patname nvarchar(1000)
declare @hisid nvarchar(1000)
declare @idcard nvarchar(1000)
declare @patientid nvarchar(1000)
declare @mk uniqueidentifier
declare @tb as table(mk uniqueidentifier)
declare @modality as nvarchar(100)
SELECT @patname=p.PATNAME,@hisid=p.HISID,@idcard=p.IDCARDNO,@mk=i.SERV_REGNO,@patientid=p.PATIENTID,@modality=o.MODALITY
from R_PATIENT p 
join IMG_SERV_REG i on p.PATIENTNO=i.PATIENTNO 
join REQ_PROC o on o.SERV_REGNO=i.SERV_REGNO where REQ_PROCNO=@REQ_PROCNO
print @patname
print @hisid
print @idcard
print @mk
print @patientid
print @modality
print @patientid
--身份证号
if(@idcard is not null and @idcard<>'' and (LEN(@idcard)=18  or len(@idcard)=15))
begin
--hisid
if(@hisid is not null and @hisid<>'')
begin
insert into @tb
SELECT distinct MERGER_FK FROM V_REPORTLIST  WHERE (PATIENTID=@patientid or IDCARDNO=@idcard  or HISID=@hisid)
end
else
begin
insert into @tb
SELECT distinct MERGER_FK FROM V_REPORTLIST  WHERE (PATIENTID=@patientid or IDCARDNO=@idcard   )
end
end
else
begin
--hisid
if(@hisid is not null and @hisid<>'')
begin
insert into @tb
SELECT distinct MERGER_FK FROM V_REPORTLIST  WHERE (PATIENTID=@patientid or  HISID=@hisid)
end
else
begin
insert into @tb
SELECT distinct MERGER_FK FROM V_REPORTLIST  WHERE (PATIENTID=@patientid   )
end
end
--select * from @tb
select v.*,dbo.GetAllExamitem(v.REQ_PROCNO) AllDirection 
from V_REPORTLIST v 
join @tb b on v.MERGER_FK=b.mk
    left join T_OrderLink l on l.REQ_PROCNO= v.REQ_PROCNO and l.ISSAVE=1
    where  1=1
    and (l.Main_REQ_PROCNO is null or l.REQ_PROCNO=l.Main_REQ_PROCNO)
and  STATUS in ( '已诊断', '已审核', '已终审', '已打印')
and v.REQ_PROCNO <> @REQ_PROCNO and PATNAME=@patname
order by v.STUDY_DATE DESC  
END


强强 2022/12/29 0评论

ASP.NET

WPF 获取程序路径

WPF 获取程序路径的方法


1.Application.ExecutablePath;

获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。


2. AppDomain.CurrentDomain.SetupInformation.ApplicationBase;

获取或设置包含该应用程序的目录的名称。

强强 2022/12/20 0评论