Esempio n. 1
0
        /// <summary>
        /// 通过主键值,获取用于显示的字段值
        /// </summary>
        /// <param name="pkid">主键值</param>
        /// <returns></returns>
        /// <remarks>主要用于设置SelectedValue后,自动带出SelectedText</remarks>
        public string GetDisplayValueFromPKID(string pkid)
        {
            if (pkid == null || pkid == string.Empty)
            {
                pkid = "-1";
            }

            BusinessFilter filter = new BusinessFilter(this.BusinessObjectName);

            filter.AddFilterItem(this.PKField.FieldName, pkid, Operation.Equal, FilterType.NumberType, AndOr.AND);

            this.BusinessObject.SessionInstance = new Wicresoft.Session.Session();
            this.BusinessObject.ClearFilter();
            this.BusinessObject.AddFilter(filter);
            this.BusinessObject.Load();

            if (this.BusinessObject.HaveRecord)
            {
                FieldInfo    fldInfo = this.BusinessObject.GetType().GetField(this.DisplayField.FieldName);
                Field        field   = fldInfo.GetValue(this.BusinessObject) as Field;
                PropertyInfo proInfo = fldInfo.FieldType.GetProperty("Value");

                return(proInfo.GetValue(field, null).ToString());
            }
            return(string.Empty);
        }
Esempio n. 2
0
        /// <summary>
        /// Test Version 2006-5-17 Tony Zhang
        /// </summary>
        /// <param name="key"></param>
        /// <param name="value"></param>
        /// <returns></returns>
        public BusinessObject GetBindingObject(string key, string value)
        {
            BusinessFilter filter = new BusinessFilter(this.BusinessObjectName);

            filter.AddFilterItem(key, value, Operation.Equal, FilterType.StringType, AndOr.AND);

            this.BusinessObject.SessionInstance = new Wicresoft.Session.Session();
            this.BusinessObject.ClearFilter();
            this.BusinessObject.AddFilter(filter);
            this.BusinessObject.Load();

            return((this.BusinessObject.HaveRecord)?this.BusinessObject:null);
        }
Esempio n. 3
0
        /// <summary>
        /// 根据PKID获取对象,用于获取外键对象
        /// </summary>
        /// <param name="objectName">外键对象名</param>
        /// <returns></returns>
        public BusinessObject GetBusinessObject(string objectName)
        {
            BusinessFilter filter = new BusinessFilter(objectName);

            filter.AddFilterItem("PKID", this.Value.ToString(), Operation.Equal, FilterType.NumberType, AndOr.AND);

            BusinessObjectCollection boc = new BusinessObjectCollection(objectName);

            boc.AddFilter(filter);
            boc.SessionInstance = new Wicresoft.Session.Session();
            boc.Query();

            if (boc.Count > 0)
            {
                boc[0].HaveRecord = true;
                return(boc[0]);
            }
            return(null);
        }