본문 바로가기
728x90
반응형

전체 글295

C#] 값 형식 VS 참조 형식 1. 두 가지 저장소 : Stack VS Heap 스택 : 개별 스레드마다 할당된 메모리 영역 힙 : 필요에 의해서 사용요청을 해야하는 저장소. 요청 후, 메모리를 할당받았으면 사용 후, 해제해야 한다. C#의 경우 가비지 collector가 메모리해제를 처리해준다. 2. 값 형식 : sbyte, char, short, ushort, int, uint, long, ulong, float, double, decimal, bool 변수 type 에 따라 무조건 스택영역에 저장소 크기가 할당되고, 값이 저장된다. 값이 초기화되지 않았으면 숫자형은 0, bool은 false를 기본값으로 갖는다. 3. 참조 형식 : object, string, array, class 값은 힙 영역에 저장하고, 스택에는 힙의 데이.. 2021. 12. 16.
ASP.NET] Select 태그 만드는 다양한 방법 (DropDownList, DropDownListFor, EnumDropDownListFor) cshtml 파일에 Select 태그를 만들때 다양한 방법을 사용할 수 있다. html Select 태그를 활용할 수 있고, SelectExtensions 클래스의 확장메서드를 사용하여 Select태그를 만들 수 있다. 1. html Select 태그 활용 선택 경력 신입 2. SelectExtensions 클래스의 확장 메서드 사용 (ASP.NET MVC 5.2) 2-1. DropDownList 활용 현재년도 ~ 2010년까지 나열되는 DropDownList를 만들어보자 2-1-1. ViewBag 활용 Controller에서 아래와 같이 만든다음 ViewBag.yearList에 할당한다. items.Add(new SelectListItem { Text = "년도", Value = "" }); for (.. 2021. 12. 8.
ASP.NET] 경로 노출없이, idx로 파일정보 조회하여 ZIP 다운로드 처리 public ActionResult ResumeDownload(int idx) { try { DataSet ds = DataAccess.Get_FileInfo(idx); //idx로 db에서 파일정보 가져오기 string fileName = ds.Tables[0].Rows[0]["FileName"].ToString(); //파일명 var filePath = Server.MapPath(AttachFilePath.AttachedFilePath + fileName); //파일경로 가져오기 if (System.IO.File.Exists(filePath)) //파일 존재여부 확인 { PersonalInfoLog log = new PersonalInfoLog log.Desc = "이러쿵 저러쿵 해서 개인정보 파일 .. 2021. 12. 6.
IEnumerable vs ICollection vs IList 차이점 IEnumerable class를 foreach loop를 사용하여 반복순회할때 사용한다. IEnumerable interface는 하나의 메소드만 가지고 있다. GetEnumerator() : IEnumerator interface를 반환한다. IEnumerator interface는 2개의 메소드와 하나의 속성을 가지고 있다. MoveNext() : 다음 요소로 이동한다. Reset() : 열거 순서를 처음으로 되돌린다. Current : 현재 요소를 반환한다. IEnumerable을 상속받아 GetEnumerater() 메소드를 구현하면, foreach loop를 사용하는 대신, GetEnumerater()로 IEnumerator를 return 받아 MoveNext(), Current로 대체할 수 .. 2021. 12. 2.
C#] LINQ 쿼리 키워드 let string[] strings = { "A penny saved is a penny earned.", "The early bird catches the worm.", "The pen is mightier than the sword." }; 위 문장을 단어로 나누고, 모음으로 시작하는 단어만 찾아보자. 1. let절 없이 처리하는 경우 //다음의 글을 단어로 쪼개서 모음으로 시작하는 단어를 찾아보자!! string[] strings = { "A penny saved is a penny earned.", "The early bird catches the worm.", "The pen is mightier than the sword." }; //1. 문장을 단어로 쪼갠다. IEnumerable query = .. 2021. 11. 5.
C#] Lambda Lambda Expression 1. Expression Lambda (parameter) => expression class Program { delegate int Calc(int a, int b); // 익명 메소드를 만들기 위한 델리게이트 public static void Main(string[] args) { Calc c = (a, b) => a + b; // 익명 메소드를 람다식으로 구현 Console.WriteLine("{0} + {1} = {2}", 1, 2, c(1, 2)); } } 2. Statement Lambda (parameter) => {code, code, code}; class Program { delegate void DoSomething(); public static vo.. 2021. 11. 5.
728x90
반응형