반응형 개발관련225 ASP.NET web.config파일 사이즈가 250kb이상일 경우에 대응방법 1. 원인 : IIS의web.config파일 사이즈는 최대250kb으로 정해져 있는데 이를 초과할 경우에는 아래와 같은 에러가 발생하면서 사이트가 열리지 않게 됩니다. Cannot read configuration file because it exceeds the maximum file size 2. 해결방법 : 레지스토리에 아래와 같은 설정치(타입은 REG_DWORD, KB값으로는 10240)를 를 설정하게 되면 에러를 방지하면서 정상적으로 사이트가 열리기 됩니다. 레지스트리 입력방식 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\ConfigurationにMaxWebConfigFileSizeInKB 커맨드 입력방식 reg add HKEY_LOCAL_MACHINE\SO.. Etc 2023. 7. 17. 같은DataTable간의 데이터가 일치하는지 확인하는 방법 1. 필요성 : DataTable의 변경사항 여부를 확인하는데 사용됩니다. 2. 비교방법 : DataTable간의 데이터가 일치할 경우는 true, 변경사항이 있을경우 false로 비교가 가능합니다. 3. 샘플코드 //DataTableOriginal(원본테이블)과DataTableNew(비교할테이블)을 비교해서 변경된 내용이 없을경우 if (DataTableOriginal.AsEnumerable().SequenceEqual(DataTableNew.AsEnumerable(), DataRowComparer.Default)) { //변경사항이 없을경우의 로직 } //DataTableOriginal(원본테이블)과DataTableNew(비교할테이블)을 비교해서 변경된 내용이 있을경우 else { //변경사항이 있을.. C# 2023. 2. 28. DataGrid의 ItemSource를 DataTable로 변환하는 방법 1. 필요성 : DataGrid의 변경값 체크용 DataTable생성에 사용할 수 있습니다. 2. 변환방법 : ItemSource에 바인딩한 클래스와 리스트형 데이터를 가지고 DataTable로 변환을 합니다. 3. 샘플코드 /// /// DataGrid를DataTable로변환 /// /// 클래스명 /// 변환할데이터리스트 /// DataTable public static DataTable DataGridToDataTable(this List data) { //변환테이블생성 var properties = TypeDescriptor.GetProperties(typeof(T)); var table = new DataTable(); var now = DateTime.Now; foreach (PropertyD.. C# 2023. 2. 21. Linq의 처리속도개선 방법 일반적으로 Linq의 처리속도는 빠른편이 아니라서 복잡한 처리와 많은 데이터의 처리시에 속도가 느려지는 경우가 있습니다. 처리속도의 최적화를 위한 3가지 방법이 있으므로 참고해서 해보시면 좋겠습니다. 1. 데이터의 건수를 취득할 경우에는 Count로 결과값을 받지 않도록 합니다. 해결방법으로는 Count의 경우에는 처리속도가 데이터가 많으면 많을수록 느려지므로 Any형태로 받는것을 추천드립니다. IEnumerable data = //클래스선언 및 데이터설정 //데이터가 많을수록 처리속도가 느려집니다 if(data.Count() > 0) { //data의 건수가 1건 이상일 경우에만 처리 } //데이터의 처리를 최소화합니다. if(data.Any()) { //data의 건수가 1건 이상일 경우에만 처리 }.. C# 2022. 6. 27. Select 쿼리 속도 개선 방법 1. 대상 : Select * From 테이블명과 같이 FullScan으로 Select를 할경우에 해당합니다. 2. 개선방법 : Select * From 테이블명 With (NoLock)으로 변경해서 검색성능을 높여서 검색하면 속도 개선이 가능합니다. 3. 그밖에 : Join을 할 경우에는 아래와 같이 설정합니다. Select * From 테이블1명 With (NoLock) inner join 테이블2명 With (NoLock) on 테이블2명.컬럼명 = 테이블1명.컬럼명 Sql Server 2022. 5. 31. Sql Server 사용자(유저)에 데이터베이스를 매핑시 에러가 발생 경우 대처 방법 1.에러코드 : Microsoft SQL Server Error 15023(신규유저 아이디가 test인 경우 에러메세지) 2.원인 : 신규유저 등록 및 기존 유저 삭제시에 매핑 정보가 남아 있을 경우에 발생 3.해결방법 : sp_change_users_login 쿼리 실행 use [데이터베이스명] go exec sp_change_users_login 'UPDATE_ONE', [유저명], [로그인명] go Sql Server 2022. 5. 30. Sql Server 신규유저로 로그인시에 에러가 발생할 경우 대처 방법 1.에러코드 : Microsoft SQL Server Error 18456(신규유저 아이디가 test인 경우 에러메세지) 2.원인 : SQL Server Management Studio의 속성에서 Security메뉴를 선택해서 보이는 Server Authentication설정이 Windows Authentication mode으로 되어 있을경우 3.해결방법 : SQL Server Management Studio의 속성에서 Security메뉴를 Server Authentication설정을 SQL Server and Windows Authentication mode으로 변경해서 재시작 Sql Server 2022. 5. 28. DataGrid의 내용을 CSV 파일로 출력할때 행과 열이 맞지않는 경우의 해결방법 1. 원인 : CSV파일 출력 내용중에서 콤마(,)를 포함할 경우에는 열이 추가로 생성되는 문제가 발생할 수 있습니다. 2. 해결방법 : CSV파일 출력 내용을 ""포함해서(예 ”내용”) 설정해주면 정상적으로 행과 열이 일치하게 됩니다. 3. 샘플코드 // CSV파일생성 using (var streamWriter = new StreamWriter(filePath, false, Encoding.GetEncoding("Shift_JIS"))) { // DataGrid헤더(컬럼)행출력 streamWriter.WriteLine(string.Join(",", DataGrid.Columns.Select(e => e.Header))); // DataGrid내용행 출력 foreach (var itemSource in .. WPF 2022. 5. 12. BackgroundWorker이벤트에 설정된 처리(DoWork)를 취소하는 방법 BackgroundWorker이벤트에 설정된 처리를 취소하는 방법 입니다. 작업순서는 다음과 같습니다. ① BackgroundWorker이벤트의 취소처리를 유효화 합니다. //백그라운드 실행생성 BackgroundWorker worker = new BackgroundWorker(); //백그라운드 취소유효화 worker.WorkerSupportsCancellation = true; ② BackgroundWorker이벤트의 실제처리를 Thread로 처리 합니다. //처리내용을 쓰레드처리 var progressThread = new Thread(() => { //처리내용추가 //100초동안 Progress처리(샘플) Thread.Sleep(100000); }); //쓰레드처리실행 progressThread... C# 2022. 4. 20. WPF에서 Progress loading 처리 방법 Nuget의 MahApps.Metro 프로임웨크를 이용한 Progress처리방법 입니다. 작업순서는 다음과 같습니다. ① WPF프로젝트를 생성후에 Nuget에서 MahApps.Metro 프레임워크를 설치합니다. ② Progress에 사용될 스타일코드를 추가합니다. ③ Progress처리를 적용할 Window의 Xaml에 Progress관련 디자인코드를 추가합니다. ④ Progress처리를 추가할 화면에 이벤트 및 소스코드를 추가 using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading; using System.Thre.. WPF 2022. 3. 14. Github Actions을 이용한 Aws S3에 Vue프로젝트 배포하기 4 Github의 Actions에 Aws S3연동 Vue프로젝트 배포관련 설정을 합니다. 작업순서는 다음과 같습니다. ① Github의 Actions메뉴를 클릭해서 나오는 화면에서 New workflow버튼을 클릭합니다. ② workflow선택화면에서 set up a workflow yourself링크를 클릭합니다. ③ Aws S3연동의 파일명과 코드를 작성후에 Start commit버튼을 클릭해서 yml파일을 등록합니다. name: Build vue S3 on: push: branches: [ master ] #master브런치에 push가 이뤄질때 작동 pull_request: branches: - '**' workflow_dispatch: defaults: run: working-directory: ... GitHub 2022. 3. 12. Github Actions을 이용한 Aws S3에 Vue프로젝트 배포하기 3 Github의 Secerts에 AWS 인증용 IAM 정보를 등록합니다. 작업순서는 다음과 같습니다. ① S3에 배포할 Github의 Repositories에서 Settings메뉴를 클릭후에 서브메뉴Secrets를 선택합니다. ② Secrets의 하위메뉴 Actions를 선택후에 New repository secret버튼을 클릭합니다. (Github Actions사용될 코드등록) ③ AWS 인증용 IAM의 엑세스 키 ID와 비밀 엑세스 키를 Add secret버튼을 클릭해서 등록합니다. ⑤ 등록된 Secerts정보는 Repository secrets 리스트에 표시됩니다. GitHub 2022. 3. 6. 이전 1 ··· 9 10 11 12 13 14 15 ··· 19 다음 반응형