본문 바로가기

컴퓨터/C#

(20)
[Error] ASP.NET Entity Framework 관련 에러 (feat. 민간요법 같은 해결 방안) ASP.NET 4.5 + EntityFramework 조합으로 사용 중에 DB 스키마 변경 없이 DB만 Mssql -> Mysql 으로 변경하던 중 발생한 에러입니다. 1. 이 함수는 네 맘대로 쓸 수 없다. Error : 이 메서드는 LINQ to Entities 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. Solution : Enumerable.AsQueryable() 제거해줌, 아예 못쓰는건 아닌데 없어도 큰 문제는 없어서 일단 제거, 나중에 필요할 때 찾아보기로 2. DB 연결을 닫지 않고 계속 열기만 하면 나중에 후회하게 될거야 Error : Entity Framework: There is already an open DataReader associated with this Comman..
[Error] .NET SQL Client Connection 관련 예외 Error message : 'System.Data.SqlClient.SqlException' 형식의 예외가 mscorlib.dll에서 발생했지만 사용자 코드에서 처리되지 않았습니다. 추가 정보: 서버에 연결했지만 로그인하는 동안 오류가 발생했습니다. (provider: SSL Provider, error: 0 - 대상 주 이름이 정확하지 않습니다.) Solution : connectionstring에 Encrypt=True일 경우, TrustServerCertificate=True 로 변경 (없으면 새로 추가) 참조 : (내용 일부 발췌) Beginning in .NET Framework 4.5, when TrustServerCertificate is false and Encrypt is true, t..
[VS] 설치 패키지의 바로가기 아이콘 변경 방법 바로가기 아이콘을 기본에서 '원하는 이미지'로 변경하는 방법 'EXE'는 아이콘이 반영 되어있는데,'바로가기'는 아이콘이 반영되지 않는 문제가 있었다. *.exe 파일로 바로가기 아이콘을 변경하는 방법이다. (*.ico 파일이 아님.) 프로젝트에서 ico 파일로 프로그램 아이콘을 미리 설정해두어야 한다. 설치 패키지에서 '기본 출력 from [프로젝트명]'을 클릭하면 File System 창이 뜬다. File System 창에서 아이콘을 변경할 항목을 선택한다. Application Folder는 해당 패키지를 이용하여 프로그램을 설치했을 때, 시스템 폴더안에 생성되는 폴더이다. User's Desktop 은 설치 후 바탕화면에 생기는 바로가기이다. User's Programs Menu/[프로젝트] 는 ..
[VS] VisualStudio C# Interactive 초 간단 사용법 Visual Studio 2015에는 C# 코드를 마치 스크립트처럼 간단하게 컴파일할 수 있는 환경이 제공된다. 프로젝트 파일 생성하기는 귀찮고, 간단하게 코드를 실행해보고 싶을 때 유용할 것 같다. 메뉴에서 보기 > 다른 창 > C# Interactive 를 클릭하면 터미널이나 CMD 같이 생긴 창이 도시된다. 먼저 유용한 단축키는, 1. #help 를 입력하면 도움말이 뜬다.2. Enter 를 치면 코드가 실행된다. (반드시 라인 끝에서 쳐야함.)3. Shift + Enter 혹은 라인 중간에서 Enter 키 : 코드 줄이 추가된다.4. Ctrl + Alt + ↑, ↓ : 이전에 입력했던 코드를 불러온다. 아래 코드를 입력하면, 문자열 별 ASCII 코드를 출력한다. 1for(i=32; i
[C#/ PostgreSQL] AWS RDS(PostgreSQL) 접속하기 및 쿼리 Npgsql (NetPostGreSQL) - PostgreSQL의 데이터를 제공하는 라이브러리 - .NET Framework로 개발되는 어떤 프로그램이던 PostgreSQL에 접근하는 것을 허용 - 100% 순수 C#으로 개발되었음 - PostgreSQL 9.0 버전부터 공식적으로 지원함 - 최신 버전은 3.1.5(stable)임 (.NET4.5 기준 / .NET4.0은 버전 2.2.7을 사용해야함) - 라이센스는 PostgreSQL License를 따름 (수정 후 배포 조건이 없고 자유로움) 1234567891011121314151617181920// AWS RDS 계정을 이용하여 PostgreSQL 연결public string Connect(AWSCredentials credentials){ var ..
[C#/ PostgreSQL] C#에서 Npgsql TimestampTZ 쿼리 C# Datetime to Npgsql TimestampTZ C# 을 이용하여 TimestampTZ 형식의 컬럼에 데이터를 넣을 때, 입력한 시간과 다르게 출력되는 경우가 있다. C#에서 입력한 시간보다 DB에는 9시간( UTC+9 한국 기준) 느린 시간이 출력되는데,이는 C# 에서 UTC 설정을 해주면 해결할 수 있다. 123456// DateTime 예제 (SpecifyKind 메소드)var time = new DateTime(2015, 10, 27, 0, 0, 0);Console.WriteLine(time.ToString()); // 2015-10-27 오전 12:00:00 var date = DateTime.SpecifyKind(time, DateTimeKind.Utc);Console.WriteL..
[.net] jni4net 을 이용하여 c# .net 에서 .jar 파일 사용하기 jni4net 이 라이브러리는 Java에서 C# 라이브러리를 사용하거나C#에서 Java 라이브러리를 사용할 수 있도록 도와줍니다. 여기서는 C#에서 Java 라이브러리를 사용하는 방법에 대해 다룹니다. 크게 두 작업 절차를 거치는데,첫째는, 라이브러리에 포함된 실행파일인 '프록시 파일'을 실행하면, 브릿지 역할을 하는 자바, 닷넷 코드와 배치 파일 등을 생성해줍니다.둘째는, 생성된 배치 파일을 실행하면, 코드를 컴파일하여 *.j4n.dll 파일과 *.j4n.jar 파일을 생성합니다.라이브러리에 포함된 jni4net.dll 파일과, 생성된 *.j4n.dll 파일이 C#과 자바 사이의 다리 역할을 한다고 볼 수 있습니다. 하지만, jni4net 에서 프록시 과정을 잘 거치려면, jar 파일이 몇가지 조건을 ..
[VS10] 사용 가능한 소스 없음, PDB가 이미지와 일치하지 않습니다. 문제 : 프로젝트에 dll 파일을 참조하였다. 그리고, 해당 dll에 대한 소스 파일을 디버깅하기 위하여 빌드할 때 만들어진 pdb 파일을 같은 경로에 두었다.그런데 디버깅 중, 해당 모듈을 사용하는 곳에서 소스가 로드되지 않고 '사용 가능한 소스 없음' 창이 떴다. 자세한 정보를 얻기 위하여 아래 이미지와 같이 호출 스택에서 기호 로드 정보를 도시하였다. 그러면, 아래와 같은 PDB 기호 로드 정보 창이 도시된다. 내용을 보면 'PDB 파일을 찾거나 열 수 없습니다.' 와 같은 내용이 대부분이지만, 첫번째 줄에서 'PDB가 이미지와 일치하지 않습니다.'라는 문구를 볼 수 있다. 첫번째 줄의 경로에서 PDB 파일을 찾았지만 모듈 파일과 무언가 정보가 일치하지 않는다는 것 같다. 해결 방법 :아래 문구로 ..