SQLite.Net의 테이블 필드에 DEFAULT 추가

3310 단어 sqlite

발단


  • 어떤 앱에서 클래스의 속성에 예상대로 초기 값이 들어가지 않는 경우
  • 예를 들어 '1'을 지정하려고하면 '0'이됩니다.

  • 발생하는 것은 앱을 버전 업했을 때만
  • 속성이 증가할 때만
  • SQLite.Net에 저장된 데이터
  • SQLite.Net의 테이블 필드에 DEFAULT가 없으면



  • 도전


  • SQLite.Net의 테이블 필드에 DEFAULT를 추가하는 방법을 살펴 보겠습니다.
  • 속성을 늘릴 때 원하는대로 초기 값이 들어 있는지 확인하십시오


  • 절차


  • 속성을 추가하기 전에 프로그램을 한 번 실행하십시오
  • 속성 추가
  • 속성 추가 후 처음 시작할 때 읽은 데이터의 내용을 확인합니다.


    코드


    [Table(name: "Hoge")]
    public class Hoge
    {
        public Hoge()
        {
            //ByConstructor = 3;
            //ByConstructorDefault = 13;
        }
    
        public int Name { get; set; }
    
        //public int ByAuto { get; set; } = 1;
    
        //private int _byBacking = 2;
        //public int ByBacking
        //{
        //    get { return _byBacking; }
        //    set { _byBacking = value; }
        //}
    
        //public int ByConstructor { get; set; }
    
        //[Default]
        //public int ByAutoDefault { get; set; } = 11;
    
        //private int _byBackingDefault = 12;
        //[Default]
        //public int ByBackingDefault
        //{
        //    get { return _byBackingDefault; }
        //    set { _byBackingDefault = value; }
        //}
    
        //[Default]
        //public int ByConstructorDefault { get; set; }
    }
    

    결과





    요약


  • 필요에 따라 [Default] 를 붙인다
  • 클래스의 프로퍼티의 초기치의 기입 방법은 불문


  • 참조



  • SQLite.Net-PCL
  • DefaultAttribute.cs
  • DefaultColumnInformationProvider.cs

  • 좋은 웹페이지 즐겨찾기