728x90 반응형 분류 전체보기295 C#] LINQ to XML(XDocument) vs XML DOM(XmlDocument) LINQ to XML은 LINQ를 사용할 수 있는 in-memory XML programming interface이다. LINQ to XML은 XML document를 memory로 가져온 DOM(Document Object Model)과 같다. document를 쿼리, 수정이 가능하고 수정 후 파일로 저장, serialize 가능하다. 하지만 DOM과 아래내용이 다르다. 가벼운 object model을 제공하며, 다루기 쉽다. C# 언어의 이점을 가진다. Language-Integrated Query(LINQ)를 사용할 수 있다. 쿼리를 사용하여 in-memory XML document의 elements, attributes를 가져올 수 있다. XPath와 XQuery와 비교될 수 있지만, 더 강력한 .. 2022. 1. 4. ASP.NET MVC 4] 종속성 주입 (Dependency Injection) 출처 : https://docs.microsoft.com/ko-kr/aspnet/mvc/overview/older-versions/hands-on-labs/aspnet-mvc-4-dependency-injection DI (Dependency Injection) 디자인 패턴의 목표 종속성 주입 패턴은 골프에 비유할 수 있다. 고객이 클럽을 요청했을때, 훌륭한 캐디는 상황에 맞는 클럽을 전달해준다. 고객은 굳이 구체적인 클럽 이름을 알려줄 필요가 없다. 티샷을 날릴때는 WoodClub, 방향과 정확도에 집중할때는 IronClub, 그린 근처에서 온그린 할때는 WedgeClub, 그린에서 홀컵에 공을 넣을때는 PutterClub이라는 논리가 캐디 머리속에 있기 때문에, 고객은 단순히 클럽만 요구하면 된다. .. 2022. 1. 3. ASP.NET Core] Model Validation Check Introduction to Model Validation Form Data는 정확성을 위해 validation을 확인해야 한다. validation은 client side, server side에서 가능하다. Client-Side Validation 사용자 경험 개선 client browser에서 실행하므로, 반응이 빠르다. validation을 위한 HTTP Request/response가 없다. Server-Side Validation Client-Side Validation은 사용자 경험 측면에서는 낫지만, 100% 신뢰할 수는 없다. 사용자 브라우저에서 자바스크립트가 실행되지 않을 수 있다. 악의적인 사용자가 data를 직접 보낼 수 있다. 자바스크립트에 오류가 있으면, invalid data를.. 2021. 12. 31. ASP.NET Core] Entity Framework Core - 1. MSSQL DB 연동 1. Models 폴더 하위에 Category.cs 추가 prop입력 후 tab키 두번 치면 public int MyProperty { get; set; }가 자동 입력된다. Id는 자동생성되는 pk이고, Name은 NOTNULL이므로 아래와 같이 DataAnnocation을 설정한다. using System.ComponentModel.DataAnnotations; namespace BulkyBook.Models { public class Category { [Key] public int Id { get; set; } [Required] public string Name { get; set; } public int DisplayOrder { get; set; } public DateTime Created.. 2021. 12. 24. C#] Value type은 어디에 저장되는가? Stack or Heap?? 참조 : https://youtu.be/jONSIhMST9E Reference type은 항상 heap에 위치한다! Value type은 어디서 생성되었는지에 따라서, stack, heap 양쪽에 위치한다 1. Main에 선언된 int : Stack Main함수에 int변수값을 지정하고 어디에 저장되는지 확인해보자 포인터 관련 연산자 & : 변수의 주소를 가져옴 * : 포인터가 가리키는 변수를 가져옴 포인터 관련 작업을 하기 위해서는 unsafe로 감싸야 한다. Main함수에 int number = 420;를 할당하면 변수 주소에 420이 저장되어 있음을 알 수 있다. 2. Class 안에 선언된 int : Heap 그렇다면 int를 class안에 넣고 class 인스턴스를 생성하면 int는 어디에 저장.. 2021. 12. 24. Visual Studio 2019] 디버깅 팁, Debugger Tips 1. BreakPoint 생성 없이 원하는 위치로 이동 여기까지 실행 아이콘을 클릭하면 BreakPoint 생성 없이 원하는 위치로 이동이 가능하다. Loop를 빠져나올때 사용하기 좋은 Tip이다. 2. 디버깅 타겟 고정 list 변수를 한번 이상 확인 하기 위해서는 pin icon을 클릭하면, 다음번 디버깅에서도 항목이 고정되어 확인이 쉬워진다. 3. 리스트의 원하는 property 결과뷰로 확인하기 결과뷰에서 보여지는 항목은 Object의 정보일 뿐이다. 한눈에 내가 원하는 property만 볼 수 있도록 해보자. Notice class로 이동해서 DebuggerDisplay를 추가하고 property를 표기한다. [DebuggerDisplay("{title}")] public class Notice.. 2021. 12. 23. 이전 1 ··· 37 38 39 40 41 42 43 ··· 50 다음 728x90 반응형