コード例 #1
0
        public CsArguments GetCreationArgs(RelatedUnitsFamily related)
        {
            var constructorArgument = TryGetConstructorArgumentFromPowerOneUnit(related);

            if (constructorArgument is null)
            {
                constructorArgument = EffectiveValue.CsEncode();
            }
            return(new CsArguments(constructorArgument));
        }
コード例 #2
0
        private string TryGetConstructorArgumentFromPowerOneUnit(RelatedUnitsFamily related)
        {
            if (_baseSource == null || _baseSourcePower < 2)
            {
                return(null);
            }
            var unitOne     = related.Other[1];
            var search      = _baseSource.EffectiveValue;
            var unitOneUnit = unitOne.Units
                              .SingleOrDefault(a => a.UnitShortCode.EffectiveValue == search);

            var powerOneContainer = related.MyInfo.PowerOne.Container;

            if (unitOneUnit != null)
            {
                return(powerOneContainer.GetTypename() + "." + unitOneUnit.FieldName);
            }
            return(null);
        }