Dapper 및 Entity Framework를 사용할 때 테이블 제약 조건을 완화하거나 비활성화합니까?

.net-4.0 dapper edmx entity-framework

문제

나는이 dataSet1.EnforceConstraints = false; 와 같은 것을 설정하고 싶다 dataSet1.EnforceConstraints = false; Dapper.Net ORM 및 Entity Framework를 사용합니다.

VS2010에서 모델을 만들었습니다.

    public DAL.Models.PROFILE GetProfile(int profileID)
    {
        using (IDbConnection connection = OpenConnection("MyDBConnectionString"))
        {
            try
            {

                var profiles = connection.Query<DAL.Models.PROFILE>("SELECT * FROM PROFILES WHERE ID=@ID", new { ID = profileID }); // IEnumerable
                var profile = profiles.First<DAL.Models.PROFILE>();

                return profile;
            }
            catch (Exception ex)
            {
                ErrorLogging.Instance.Fatal(ex);
                return null;
            }
        }
    }

... valuenull 인 경우 StructuralObject.SetValidValue... 에서 제약 조건 예외가 발생합니다. 어떻게 그리고 어디에서이 기능을 끌까요?

내 데이터 호출은 다음과 같습니다.

    public DAL.Models.PROFILE GetProfile(int profileID)
    {
        using (IDbConnection connection = OpenConnection("MyDBConnectionString"))
        {
            try
            {

                var profiles = connection.Query<DAL.Models.PROFILE>("SELECT * FROM PROFILES WHERE ID=@ID", new { ID = profileID }); // IEnumerable
                var profile = profiles.First<DAL.Models.PROFILE>();

                return profile;
            }
            catch (Exception ex)
            {
                ErrorLogging.Instance.Fatal(ex);
                return null;
            }
        }
    }

수락 된 답변

자동 생성 된 EntityObject 기반 엔티티를 사용 EntityObject 필드를 null이 아닌 것으로 표시하면 (데이터베이스에 null이 허용되지 않음)이 유효성 검사를 해제 할 수 없습니다. SetValidValue 의 두 번째 매개 변수는 null이 허용되는지 여부를 결정합니다.




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.