본문 바로가기
728x90
반응형

분류 전체보기281

MSSQL] DB 테이블 명세서 html 생성 쿼리 --//SQL Database documentation script --//Description: T-SQL script to generate the database document for SQL server 2000/2005 Declare @i Int, @maxi Int Declare @j Int, @maxj Int Declare @sr int Declare @Output varchar(4000) --Declare @tmpOutput varchar(max) Declare @SqlVersion varchar(5) Declare @last varchar(155), @current varchar(255), @typ varchar(255), @description varchar(4000) create Tabl.. 2023. 10. 24.
C#] String 검색 함수, 성능 비교 출처 : How to Perform Case-Insensitive Substring Search in C# (code-maze.com) 1. String.Contains() 2가지 overloads가 있다. Contains(String), Contains(String, StringComparison) StringComparision은 6개의 enum 값을 갖는다. 여기서는 2개만 살펴보자. Ordinal enumeration : enum 미지정 시, 기본으로 설정되는 enum, 소문자와 대문자를 구분한다. var sourceString = "Hello World"; var substringToSearch = "world"; sourceString.Contains(substringToSearch, Stri.. 2023. 10. 23.
C#] method signature - generic type, specific type arguments에는 generic type을 사용하고, return value로는 specific type을 사용하자! 1. Return the most specific type, accept the most generic type Use the most generic types possible for arguments Use the most specific types possible for return values public abstract class Pet { /* ... */ } public class Dog : Pet { /* ... */ } public class Cat : Pet { /* ... */ } 1.1 Generic types are for arguments public stati.. 2023. 9. 15.
C# 9.0] init keyword, record, with-expression Init-only properties Object initializer는 사용자에게 객체 생성을 위한 유연하고 가독성있는 형식의 타입을 제공한다. 특히, 객체의 nested object 생성에 편리하다. public class Person { public string? FirstName { get; set; } public string? LastName { get; set; } } var person = new Person { FirstName = "Mads", LastName = "Torgersen" }; 한계 중 하나는, properties가 mutable이어야 한다는 것이다. Init-only properties로 해결할 수 있다. init accessor는 객체 초기화 시에만 호출되는 set ac.. 2023. 9. 5.
.NET Core MVC] EF Core - 10. Cartesian Product, Cartesian Explosion Single query의 Performance issue RDB 작업을 할때, EF는 single query에 JOIN을 사용해서 related entities 데이터를 로딩한다. SQL에서 JOIN이 일반적인 방법이지만, 부적절하게 사용하면 심각한 Performance issue를 일으킬 수 있다. Cartesian Product Cartesian product는 2 sets의 곱을 나타내는 수학적 표현이다. first set이 2 elements로 이루어져 있고, second set이 3 elements로 이루어져있을 때, cartesian product 결과는 6 elements이다. first set의 각 elements에 second set의 모든 elements를 조합한다. { a1, a2 }.. 2023. 9. 4.
.NET Core MVC] EF Core - 9. raw SQL queries raw SQL queries 실행 EF의 장점 중 하나는, data 저장 특정 방법에 매여있지 않다는 것이다. SQL queries를 작성할 수 있다. 하지만, 특정 SQL queries를 실행할때 예외적인 시나리오가 있다. 이 시나리오를 위해, SQL 구문을 database에 직접적으로 전달할 수 있는 함수를 제공한다. EF Core 1.0에 다음의 option이 있다. entity type을 return하는 queries를 위해서는 DbSet.FromSql 함수를 사용한다. return object는 DbSet object이어야 한다. turn tracking off 하지 않는 이상 database context에 의해 자동으로 추적된다. non-query 명령어를 위해서는 Database.Execu.. 2023. 9. 1.
728x90
반응형