본문 바로가기

개발

(57)
wpf MVVM Commandparameter 여러 개 파라미터 받기 wpf의 MVVM패턴 사용시 commandparameter의 값을 여러개를 받을때 사용 할 수 있는 코드입니다. -소스는 저번에 사용한 ICommand활성화 비활성화를 가져다 썻습니다. 1.컨버터 코드 생성 //컨버터 class Converter : IMultiValueConverter { public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { return values.Clone(); } public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture) { throw new ..
wpf MVVM ICommand 버튼 비활성화 활성화 wpf의 mvvm 패턴을 활용한 버튼 활성화 비활성화 로직을 만들어 보겠습니다. 우선 MVVM패턴이기 때문에 view viewmodel 로 구분하겠습니다. view viewModel using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Text; namespace WpfApp1 { class MainVM { //데이터가 들어갈 생성자 public ObservableCollection MainList { get; set; } = new ObservableCollection(); //버튼 command 바인딩 객체 public Relaycommand ButtonCommand {get; ..
C# 오류 'System.Windows.ResourceDictionary' 형식의 개체를 만들 수 없습니다. 원인 분석 윈도우에서 KB5021233 , KB5020872에 대한 보안 업데이트를 한 뒤로 System.Windows.Markup.XamlParseException: ''System.Windows.ResourceDictionary' 형식의 개체를 만들 수 없습니다. CreateInstance에 실패했으며 이는 'System.Windows.ResourceDictionary'에 대한 공용 기본 생성자가 없기 때문일 수 있습니다. 1 줄 200 위치의 개체 'System.Windows.Documents.FixedPage'에서 오류가 발생했습니다.' 위와 같은 오류가 뜨기 시작 했습니다. 아래는 해당 오류를 분석한 내용입니다. 에러가 나는 로직은 wpf의 flowdocument라는 형식을 xps문서로 변경한뒤 해당 xp..
WPF 디자인 패턴 mvvm패턴 viewmodel? view? MVVM 패턴은 VIEW VIEWMODEL MODEL로 구분이 되어있는 디자인 패턴입니다. 1.View view는 ui에 관한 로직을 포함합니다. 즉 사용자가 화면에서 보는 것들에 관한 로직만을 담는것을 원칙으로 합니다. wpf에서는 initializecomponent메서드를 호출하는 생성자만 호출하는 것이 이상적으로는 바람직합니다. 단 코드비하인드에는 xaml에서 표현하기 어렵거나 view모델에서 바인딩하는것을 구현하기 어렵거나 비효율적인 ui에 관한 로직을 포함 합니다. view는 datacontext를 통해 view model을 참조합니다. 2.View model 뷰모델은 프리젠 테이션 로직을 포함 합니다. view에 대한 직접적인 참조를 가지고 있으면 안됩니다. view가 바인드 할수 있는 프라퍼..
api와 endpoint?가 무엇일까? 1. api api는 어플리케이션 간의 통신을 할수 있게 해주는 매커니즘입니다. 흔히들 말하는 식당 손님과 홀점원 주방장과의 관계에서 점원의 역활을 수행하고 있습니다. 그러면 api는 결국에는 상호간의 통신을 할 수 있게 해주는 징검다리 역할을 하게 됩니다. 우리는 이런 api를 활용해서 데이터를 끌어오거나 특정한 기능을 가져와서 수행할 수 있습니다. 예를 들어보자면 api를 활용해서 아래와 같이 카카오톡의 공유기능을 활용 할수 있습니다. 2. endpoint endpoint는 간단하게 말해서 해당 api를 호출할때의 url이라고 이해하면 됩니다. 해당 api를 호출 하였을때 해당 어떤 로직이 실행되는지 그 위치를 의미하는 url이 endpoint라고 합니다
Oracle 오류 ORA-12154: TNS:could not resolve the connect identifier specified 해결법 오라클에 접속하려고 하니 ORA-12154: TNS:could not resolve the connect identifier specified 라는 오류가 저를 괴롭혔습니다ㅜ 해당 오류를 잡기위해서 여러가지를 시도 해봤습니다. 1. 환경변수 잡아주기 환경변수에 ORACLE_HOME이라는 변수를 설정해주고 C:\Oracle\product\11.2.0\client_1로 설정을 맞춰 줬습니다. 하지만 위의 방법으로는 해결 하지 못했습니다. 2.sqlnet.ora 아이피 접근 허용설정 SQLNET.AUTHENTICATION_SERVICES = (NTS)를 주석처리 -오라클 클라이언트가 접속할때 어떠한 인증서비스를 사용할 것인지에 대한 옵션 nts는 윈도우 서비스 사용 tcp.invited_nodes=(서버아이피..
PDU 네트워크 데이터 단위 세그먼트? 패킷? 패킷 생성원리 OSI7계층을 보면 위처럼 각각의 단계로 구분할 수 있습니다. 이를 dod모델로보면 4계층으로 구분이 되는데 이때 상위 계층에서 하위 계층으로 데이터를 전달할때 붙이는 제어 정보를 PDU(프로토콜 데이터 단위)라고 합니다. PDU는 계층에 따라 단위의 명칭이 달라지는데 7계층인 사용자단 즉 Application 계층에서 사용하는 pdu는 (stream) data 이다 L4) 전송계층에서는 segment L3) ip가 있는 network계층에서는 패킷 L2) 랜카드가있는 데이터링크 단계에서는 Frame이라고 합니다 이때 이 pdu들이 어떻게 변환 되는지 알아 보겠습니다. 1.Application단계에서 다음단계인 Tcp/ip 단계로 데이터를 넘길때는 Socket을 통해서 넘겨야 하는데 Socket의 본질은..
네트워크 식별자란? port번호 ip mac의 차이 의미 port번호 네트워크의 식별자에 대해 알아 보겠습니다. 네트워크 모델은 국제표준화 기구에서 제시한 OSI7계층입니다 그리고 이를 간소화해 놓은 모델이 DOD모델입니다. 이를 소프트웨어와 하드웨어로 구분하면 아래와 같습니다 1.user mode( 사용자 소프트웨어) - Application 2.kerner mode(시스템 소프트웨어)- Transport,Internet 3.h/w (하드웨어) - Network 위처럼 각 계층을 구분 할때 식별하는 것이 식별자 입니다. 식별자는 PORT, IP, MAC이 있습니다. 1.MAC MACㄴ은 h/w를식별할 수 있는 식별자 입니다. 즉 NIC 네트워크 랜카드를 식별 할 수 있는 식별자 입니다 하나의 랜카드에 하나의 Mac주소가 할당 됩니다. 이때 랜카드가 유선/무선..
http란? http에 알아보기 http는 html 을 전송하기 위한 통신규약 입니다. http는 아래와 같이 나뉩니다. 클라이언트가 서버에 요청을 하는 행위를 request 서버가 클라이어트에 응답하는 행위를 response -http의 method http의 method는 클라이언트가 이를 통해 어떠한 요청을하는지 알리는 방법이라고 보시면 됩니다. 흔히 말하는 crud의 기능을 http에서는 아래와 같이 사용합니다. http method create (생성) : post read(읽기) : get update (수정) : put(전체) , patch(일부) delete(삭제) : delete 이제는 http의 두 구조에 대해 알아봅시다. 1.request message request message메세지의 구조는 아래와 같습니다. 맨..
Frame Work , Library , SDK , API 의 차이점 SDK - 소프트웨어 개발 도구 - API 문서 LIBRAYR IDE등이 포함될 수 있으며 개발시에 도움이 되는 도구의 모음이다. EX)JDK ,IOS SDK , ANDROID SDK 등 API - 응용프로그램 개발 인터페이스이다. - 서로다른 어플리케이션 간의 통신할 수 있게하는 메커니즘 - 누군가가 사용할 수 있도록 DB나 기능을 모듈화 해서 필요한 부분을 가져다 쓸 수 있게 만들었다. 라이브러리 - 개발자가 사용할 수 있는 기능을 종류나 목적에 맞게 묶은 것 - 재사용이 가능한 특징을 가진다 (참조를 통해 사용 가능) - 사용자가 필요시에 호출해서 사용 가능 - 사용자가 제어 가능 FRAME WORK - 개발 시 쓰이는 기능을 제공하여 개발의 효율의 향상을 목표로 하는 소프트웨어 환경을 말한다. -..