본문 바로가기

Entity Framework6

Visual Studio 2017&Entity Framework 클래스 다이어그램이 표시되지 않는 문제의 해결방법(edmx파일) 경위 Visual Studio 2017에서 edmx 파일을 열어서 DB 설정내용을 갱신 시키고 싶은데 edmx 파일이 정상적으로 열리지 않았습니다. 원인 Visual Studio 2017에는 edmx파일 표시 모듈이 기본 설치에 포함되어 있지 않기 떄문에 별도로 인스톨 할 필요가 있었습니다... 해결 방법 클래스 디자이너를 인스톨 합니다. Visual Studio 2017 로 버젼업 한 직후엔 이런 사소한 일로 가끔 헤맷던 기억이 있군요... 2019. 1. 28.
Entity Framework에서 MySQL 접속하기 -2 Entity Framework에서 MySQL 접속하기 의 보충적인 내용입니다. 신규 프로젝트 작성 ~ DB 모델의 추가까지의 이미지 ※ DB는 WordPress의 테이블들이 있는 MySQL DB입니다. 1. Install-Package EntityFramework 2. Install-Package MySql.Data 3. Install-Package MySql.Data.Entity 4. Install-Package MySql.Web 5. Edit Web.config 6. Clean & Build 7. Make ADO.NET Entity Data Model 그외의 예외상황 해결방법 1. 날짜 변환시에 에러가 발생할 경우 MySQL에서 System.DateTime의 값을 취득할 경우에 하기의 에러가 발생하는.. 2019. 1. 23.
Entity Framework에서 MySQL 접속하기 0. Install-Package EntityFramework Entity Framework가 인스톨 되어 있지 않았을 경우엔 EntityFramework 6.0 을 설치합니다. 1. MySQL for Visual Studio를 설치 「mysql-for-visualstudio-2.0.5.msi」 Download MySQL for Visual Studio https://dev.mysql.com/downloads/windows/visualstudio/2.0.html 2. MySQL connector를 설치 「mysql-connector-net-6.9.11.msi」 다운로드 미러 http://mirror.cogentco.com/pub/mysql/MySQLInstaller/ 3. NuGet 패키지 관리에서 My.. 2019. 1. 23.
Entity Framework에서 제일 최근에 갱신된 레코드를 추출하기 Entity Framework에서 제일 최근에 갱신된 레코드를 추출하는 방법을 정리해 보았습니다. DB샘플 tb1 Id DetailId LastUpdatedAt 1 101 2017-02-01 01:00:00 2 102 2017-02-01 10:00:00 3 103 2017-02-02 01:00:00 4 104 2017-02-01 01:00:00 5 105 2017-02-02 01:00:00 tb2 DetailId Name 101 Name1 102 Name2 예시1. tb1에서 같은 DetailId를 가진 복수의 레코드 중에서 제일 최근에 갱신된 레코드를 추출 var list = (from t in db.tb1 group t by t.DetailId into g select g.OrderByDescendi.. 2019. 1. 23.
Entity Framework에서 SQL문을 직접 실행해서 결과 취득하기 SQL쿼리를 그대로 Entity Framework에서 실행하고 싶을 경우의 사용법입니다. SELECT var testList = new List(); var test = DbContext.Database.SqlQuery("SELECT item_id, details FROM item WHERE item_type = 1;"); if (test != null) { testList = test.ToList(); } INSERT/UPDATE int updateResultCount = DbContext.Database.ExecuteSqlCommand("UPDATE item SET item_type = '2' WHERE item_id = 11;"); SQL -> IQueryable string sql = "SELEC.. 2019. 1. 23.
Entity Framework에서 tinyint(1)를 sbyte로 인식 시키고 싶을 경우의 해결 방법 1. config 파일을 수정 Web.config 또는 App.config의 에 “TreatTinyAsBoolean=false”를 추가합니다. 2. DB의 edmx 파일을 수정 SSDL content 부분의 bool를 tinyint로 수정합니다. 그리고 CSDL content 부분의 Boolean을 SByte로 수정합니다. 현재(2016.12) Web.config의 설정만으로 edmx가 자동으로 대응해 주는 방법은 없어서 exmd 파일에서 해당 컬럼과 모델 항목 설정을 일일이 수정해 줄 필요가 있습니다. 그리고 edmx에 변경이 발생할 때마다 (테이블의 추가/변경/삭제 등) 기존의 수동 설정은 새로 리셋되기 때문에 갱신 할때마다 설정을 수정하지 않으면 안됩니다. 처음부터 새로 DB를 구축할때 Entity.. 2019. 1. 21.