示例#1
0
文件: Record.cs 项目: rioka/nfx
        public void ValidationExceptionOnPost()
        {
            var rec = R.Make <PersonRecord>();

            rec.Create();
            rec.fldRegistered.Value = true;
            rec.Post();//rest of required fields are blank
        }
示例#2
0
文件: Record.cs 项目: rioka/nfx
        private PersonRecord makeValidPerson()
        {
            var rec = R.Make <PersonRecord>();

            rec.Create();
            rec.fldName.Value       = "John Frank Bookman";
            rec.fldScore.Value      = 10;
            rec.fldSex.Value        = "M";
            rec.fldSalary.Value     = 75000M;
            rec.fldRegistered.Value = true;
            rec.fldDOB.Value        = DateTime.Parse("June 18, 1955");
            rec.fldMovieNames.Value.Add("Titanic");

            return(rec);
        }
示例#3
0
文件: Record.cs 项目: rioka/nfx
        public void DefaultValues()
        {
            var rec = R.Make <PersonRecord>();

            //this is black magic, never cast fields in normal use cases
            var fldName = (StringField)rec.fldName;

            fldName.DefaultValue    = "Hello!";
            fldName.HasDefaultValue = true;

            var fldRegistered = (BoolField)rec.fldRegistered;

            fldRegistered.DefaultValue    = false;
            fldRegistered.HasDefaultValue = true;

            rec.Create();//this should default field values

            Assert.AreEqual("Hello!", ~fldName);
            Assert.IsTrue(rec.fldName.HasValue);

            Assert.IsFalse(~fldRegistered);
            Assert.IsTrue(rec.fldName.HasValue);
        }
示例#4
0
文件: BindingBase.cs 项目: rioka/nfx
        /// <summary>
        /// Attaches to a surrogate record instance. This is an internal framework design-time only method.
        /// Throws exceptions. Not intended to be called by developers
        /// </summary>
        public void AttachDesignTimeSurrogateRecord(string recordTypeName)
        {
            if (!DesignTime)
            {
                return;
            }

            if (m_Attached)
            {
                Detach();
            }

            if (!string.IsNullOrEmpty(recordTypeName))
            {
                Type t = Type.GetType(recordTypeName);

                if (t != null)
                {
                    Record rec = Record.Make(t);
                    if (rec != null)
                    {
                        rec._markAsSurrogate();
                        m_Record         = rec;
                        m_RecordTypeName = recordTypeName;
                        m_Record.RegisterBinding(this);
                        m_Attached = true;
                    }
                }
            }

            if (!m_Attached)
            {
                throw new RecordModelException(StringConsts.SURROGATE_LOAD_ERROR);
            }

            BindingStatusChanged();
        }
示例#5
0
文件: Record.cs 项目: rioka/nfx
        public void ListOfTFieldImmutability()
        {
            var rec = R.Make <PersonRecord>();

            rec.fldMovieNames.Value.Add("cant go");
        }
示例#6
0
文件: Record.cs 项目: rioka/nfx
        public void StateExceptionOnMutation()
        {
            var rec = R.Make <PersonRecord>();

            rec.fldName.Value = "aaa"; //cant write to non-init record
        }