public static IPostgresTuple CreateExtendedRecordTupleFrom(global::UseCase1.Customer item, bool[] useColumn)
        {
            if (item == null)
            {
                return(null);
            }
            var items = new IPostgresTuple[ExtendedColumnCount];

            if (useColumn[ExtendedProperty_ID_Index])
            {
                items[ExtendedProperty_ID_Index] = _DatabaseCommon.Utility.GuidToTuple(item.ID);
            }
            if (useColumn[ExtendedProperty_Name_Index])
            {
                items[ExtendedProperty_Name_Index] = _DatabaseCommon.Utility.StringToTuple(item.Name);
            }
            if (useColumn[ExtendedProperty_RegistrationNumber_Index])
            {
                items[ExtendedProperty_RegistrationNumber_Index] = _DatabaseCommon.Utility.IntegerToTuple(item.RegistrationNumber);
            }
            if (item.SubmissionsURI != null)
            {
                if (useColumn[ExtendedProperty_SubmissionsURI_Index])
                {
                    items[ExtendedProperty_SubmissionsURI_Index] = ArrayTuple.Create(item.SubmissionsURI, it => new Revenj.DatabasePersistence.Postgres.Converters.ValueTuple(it));
                }
            }
            ;
            return(RecordTuple.From(items));
        }
コード例 #2
0
 public void Prepare(System.IServiceProvider locator)
 {
     this.cms.Reset();
     this.locator = locator;
     this.list.Clear();
     this.one = null;
 }
コード例 #3
0
        internal void UpdateWithAnother(global::UseCase1.Customer result)
        {
            this.URI = result.URI;

            this.Name = result.Name;
            this.RegistrationNumber = result.RegistrationNumber;
            this.Submissions        = result.Submissions;
            this._SubmissionsURI    = result._SubmissionsURI;
            this.ID = result.ID;
        }
        public static global::UseCase1.Customer CreateFromExtendedRecord(Revenj.Utility.BufferedTextReader reader, int outerContext, int context, IServiceProvider locator)
        {
            reader.Read(outerContext);
            var item = new global::UseCase1.Customer(locator);

            foreach (var config in ReaderExtendedConfiguration)
            {
                config(item, reader, context, locator);
            }
            reader.Read(outerContext);

            item.URI = _DatabaseCommon.FactoryUseCase1_Customer.CustomerConverter.BuildURI(reader.CharBuffer, item.ID);
            item.__DataCacheSubmissions = new Lazy <IDataCache <global::UseCase1.Submission> >(() => locator.Resolve <IDataCache <global::UseCase1.Submission> >());
            item.__ResetChangeTracking();
            return(item);
        }
コード例 #5
0
            internal void CollectOne(System.Data.IDataReader dr)
            {
                var _pg  = dr.GetValue(0);
                var _str = _pg as string;

                if (_str != null)
                {
                    one = _DatabaseCommon.FactoryUseCase1_Customer.CustomerConverter.CreateFromRecord(cms.UseBufferedReader(_str), 0, locator);
                }
                else
                {
                    var _tr = _pg as System.IO.TextReader ?? new System.IO.StringReader(_pg.ToString());
                    try { one = _DatabaseCommon.FactoryUseCase1_Customer.CustomerConverter.CreateFromRecord(cms.UseBufferedReader(_tr), 0, locator); }
                    finally { _tr.Dispose(); }
                }
            }