Entity Framework에서 속성의 프로그래밍 방식으로 'Nullable'상태 가져 오기

DJJ

EF의 필드에 대해 Nullable 속성을 가져와야합니다. Nullable = True 인 속성에 대해 일부 매직 코드를 수행해야하며 속성을 가져 오는 작업 솔루션을 찾을 수 없습니다.

foreach (PropertyInfo property in (PropertyInfo[])type.GetProperties())
{
   var getPropertyType = property.GetMethod.ReturnTypeCustomAttributes.ToString();

   var getValue = property.GetValue(model);
   bool isNullable = property.PropertyType.IsGenericType && property.PropertyType.GetGenericTypeDefinition() == typeof(Nullable<>);

   // isNullable always returns false !!!! and I need it to return true if the field is allowed to be null

   if ((getValue == null) && (!isNullable))
   {
   }
}

수업

//    This code was generated from a template.
//
//    Manual changes to this file may cause unexpected behavior in your application.
//    Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace testApp.Data
{
    using System;
    using System.Collections.Generic;

    public partial class Person
    {
        public int PersonId { get; set; }
        public string Email { get; set; }
    }
}

어떤 도움을 주시면 감사하겠습니다.

게르트 아놀드

따라서 데이터베이스에서 nullable 속성을 원합니다. 이는 "일부 매직 코드"가 EDMX의 스토리지 모델을 조사해야 함을 의미합니다. 클래스 모델에는 생성 된 클래스는 물론이 정보가 포함되어 있지 않습니다.

스토리지 모델의 모든 nullable 속성 목록을 가져 오는 방법은 다음과 같습니다.

var tableName = "someTable";
var oc = ((IObjectContextAdapter)context).ObjectContext;

var items = oc.MetadataWorkspace.GetItems(DataSpace.SSpace).OfType<EntityType>();
foreach (var entityType in items.Where(e => e.Name == tableName))
{
    var props = string.Join(",", entityType.Properties.Where(p => p.Nullable));
    Debug.WriteLine(string.Format("{0}: {1}", entityType.Name, props));
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

프로그래밍 방식으로 생성 된 뷰 태그 가져 오기

분류에서Dev

프로그래밍 방식으로 '새로 시작된'EMR 클러스터의 상태 가져 오기

분류에서Dev

프로그래밍 방식으로 JFrame 장식 상태 가져 오기

분류에서Dev

Eclipse 내에서 프로그래밍 방식으로 외부 프로그램의 전체 경로 가져 오기

분류에서Dev

Log4j2 XML 구성에서 프로그래밍 방식으로 속성 가져 오기

분류에서Dev

XCART-5 프로그래밍에서 속성 값 가져 오기 및 프로그래밍 방식으로 다른 값 할당

분류에서Dev

프로그래밍 방식으로 CMake 프로젝트의 모든 대상 가져 오기

분류에서Dev

프로그래밍 방식으로 안드로이드 장치에서 PC의 IP 주소 가져 오기

분류에서Dev

Bash : 프로그래밍 방식으로 (예 : 변수에서) 명령의 완료 출력 가져 오기

분류에서Dev

프로그래밍 방식으로 Android에서 Facebook 친구의 세부 정보 가져 오기

분류에서Dev

프로그래밍 방식으로 Android의 R 파일에서 모든 이미지 가져 오기

분류에서Dev

프로그래밍 방식으로 Android에서 ARGB 배경색의 A 값 가져 오기

분류에서Dev

Play 스토어에있는 앱의 버전 코드를 프로그래밍 방식으로 가져 오기

분류에서Dev

프로그래밍 방식으로 View의 자식 가져 오기

분류에서Dev

COCOA에서 프로그래밍 방식으로 "GeneratedUID"가져 오기

분류에서Dev

프로그래밍 방식으로 Google+ 상태 업데이트 가져 오기

분류에서Dev

NetworkManager에서 범위 내의 무선 SSID 목록을 프로그래밍 방식으로 가져 오는 방법

분류에서Dev

프로그래밍 방식으로 장치의 EMUI 버전 가져 오기

분류에서Dev

프로그래밍 방식으로 WKInterfaceGroup의 배경색 가져 오기 (WatchKit)

분류에서Dev

프로그래밍 방식으로 단어 정의 가져 오기

분류에서Dev

봄에 프로그래밍 방식으로 JNDI 리소스 가져 오기

분류에서Dev

프래그먼트에 프로그래밍 방식으로 추가 된 edittext에서 값 가져 오기

분류에서Dev

프로그래밍 방식으로보기 iOS 상단에 버튼 추가

분류에서Dev

프로그래밍 방식으로 요소에 속성 추가

분류에서Dev

Entity Framework의 각 부모 속성에서 최상위 결과 가져 오기

분류에서Dev

프로그래밍 방식으로 명령 프롬프트에서 system32 경로 가져 오기

분류에서Dev

프로그래밍 방식으로 NGRX 상태의 값에 액세스

분류에서Dev

Entity Framework에서 다른 속성으로 그룹화 된 최신 항목 목록 가져 오기

분류에서Dev

프로그래밍 방식으로 Rails 4에서 belongs_to 연관 클래스 가져 오기

Related 관련 기사

  1. 1

    프로그래밍 방식으로 생성 된 뷰 태그 가져 오기

  2. 2

    프로그래밍 방식으로 '새로 시작된'EMR 클러스터의 상태 가져 오기

  3. 3

    프로그래밍 방식으로 JFrame 장식 상태 가져 오기

  4. 4

    Eclipse 내에서 프로그래밍 방식으로 외부 프로그램의 전체 경로 가져 오기

  5. 5

    Log4j2 XML 구성에서 프로그래밍 방식으로 속성 가져 오기

  6. 6

    XCART-5 프로그래밍에서 속성 값 가져 오기 및 프로그래밍 방식으로 다른 값 할당

  7. 7

    프로그래밍 방식으로 CMake 프로젝트의 모든 대상 가져 오기

  8. 8

    프로그래밍 방식으로 안드로이드 장치에서 PC의 IP 주소 가져 오기

  9. 9

    Bash : 프로그래밍 방식으로 (예 : 변수에서) 명령의 완료 출력 가져 오기

  10. 10

    프로그래밍 방식으로 Android에서 Facebook 친구의 세부 정보 가져 오기

  11. 11

    프로그래밍 방식으로 Android의 R 파일에서 모든 이미지 가져 오기

  12. 12

    프로그래밍 방식으로 Android에서 ARGB 배경색의 A 값 가져 오기

  13. 13

    Play 스토어에있는 앱의 버전 코드를 프로그래밍 방식으로 가져 오기

  14. 14

    프로그래밍 방식으로 View의 자식 가져 오기

  15. 15

    COCOA에서 프로그래밍 방식으로 "GeneratedUID"가져 오기

  16. 16

    프로그래밍 방식으로 Google+ 상태 업데이트 가져 오기

  17. 17

    NetworkManager에서 범위 내의 무선 SSID 목록을 프로그래밍 방식으로 가져 오는 방법

  18. 18

    프로그래밍 방식으로 장치의 EMUI 버전 가져 오기

  19. 19

    프로그래밍 방식으로 WKInterfaceGroup의 배경색 가져 오기 (WatchKit)

  20. 20

    프로그래밍 방식으로 단어 정의 가져 오기

  21. 21

    봄에 프로그래밍 방식으로 JNDI 리소스 가져 오기

  22. 22

    프래그먼트에 프로그래밍 방식으로 추가 된 edittext에서 값 가져 오기

  23. 23

    프로그래밍 방식으로보기 iOS 상단에 버튼 추가

  24. 24

    프로그래밍 방식으로 요소에 속성 추가

  25. 25

    Entity Framework의 각 부모 속성에서 최상위 결과 가져 오기

  26. 26

    프로그래밍 방식으로 명령 프롬프트에서 system32 경로 가져 오기

  27. 27

    프로그래밍 방식으로 NGRX 상태의 값에 액세스

  28. 28

    Entity Framework에서 다른 속성으로 그룹화 된 최신 항목 목록 가져 오기

  29. 29

    프로그래밍 방식으로 Rails 4에서 belongs_to 연관 클래스 가져 오기

뜨겁다태그

보관