本文整理汇总了C#中IBusinessObject.GetPropertyValue方法的典型用法代码示例。如果您正苦于以下问题:C# IBusinessObject.GetPropertyValue方法的具体用法?C# IBusinessObject.GetPropertyValue怎么用?C# IBusinessObject.GetPropertyValue使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IBusinessObject
的用法示例。
在下文中一共展示了IBusinessObject.GetPropertyValue方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AssertPersonsAreEqual
private static void AssertPersonsAreEqual(IBusinessObject originalPerson, IBusinessObject deserialisedPerson)
{
foreach (IBOProp prop in originalPerson.Props)
{
Assert.AreEqual(prop.Value, deserialisedPerson.GetPropertyValue(prop.PropertyName));
}
}
示例2: GetValidPropValue
/// <summary>
/// Returns a valid prop value for <paramref name="propName"/> for the
/// <see cref="IBusinessObject"/> using any <see cref="IPropRule"/>s for the Prop and any
/// <see cref="InterPropRule"/>s for the BusinessObject.
/// </summary>
/// <param name="bo"></param>
/// <param name="propName"></param>
/// <returns></returns>
public object GetValidPropValue(IBusinessObject bo, string propName)
{
//TODO brett 18 Mar 2010: This will not take into consideration multiple InterPropRules
// this should find the most restrictive rule and then return a result using the most restrictive rule.
IEnumerable<IBusinessObjectRule> businessObjectRules = GetBusinessObjectRules(bo);
if (businessObjectRules != null)
{
IValidValueGeneratorNumeric validValueGenerator;
var interPropRules = from rule in businessObjectRules.OfType<InterPropRule>()
where rule.RightProp.PropertyName == propName
select rule;
foreach (InterPropRule businessObjectRule in interPropRules)
{
object leftPropValue = bo.GetPropertyValue(businessObjectRule.LeftProp.PropertyName);
if (leftPropValue != null)
{
validValueGenerator =
GetValidValueGenerator(businessObjectRule.RightProp) as IValidValueGeneratorNumeric;
if (validValueGenerator != null)
{
switch (businessObjectRule.ComparisonOp)
{
case ComparisonOperator.GreaterThan:
case ComparisonOperator.GreaterThanOrEqual:
return validValueGenerator.GenerateValidValueLessThan(leftPropValue);
case ComparisonOperator.EqualTo:
return leftPropValue;
case ComparisonOperator.LessThanOrEqual:
case ComparisonOperator.LessThan:
return validValueGenerator.GenerateValidValueGreaterThan(leftPropValue);
}
return null;
}
}
}
interPropRules = from rule in businessObjectRules.OfType<InterPropRule>()
where rule.LeftProp.PropertyName == propName
select rule;
foreach (InterPropRule businessObjectRule in interPropRules)
{
object rightPropValue = bo.GetPropertyValue(businessObjectRule.RightProp.PropertyName);
if (rightPropValue != null)
{
validValueGenerator =
GetValidValueGenerator(businessObjectRule.RightProp) as IValidValueGeneratorNumeric;
if (validValueGenerator != null)
{
switch (businessObjectRule.ComparisonOp)
{
case ComparisonOperator.GreaterThan:
case ComparisonOperator.GreaterThanOrEqual:
return validValueGenerator.GenerateValidValueGreaterThan(rightPropValue);
case ComparisonOperator.EqualTo:
return rightPropValue;
case ComparisonOperator.LessThanOrEqual:
case ComparisonOperator.LessThan:
return validValueGenerator.GenerateValidValueLessThan(rightPropValue);
}
return null;
}
}
}
}
return this.GetValidPropValue(bo.ClassDef, propName);
}
示例3: UpdateExistingBo
private void UpdateExistingBo(IBusinessObject bo, IBusinessObject existingBo)
{
foreach (var prop in existingBo.Props)
{
existingBo.SetPropertyValue(prop.PropertyName, bo.GetPropertyValue(prop.PropertyName));
}
}
示例4: IsValid
/// <summary>
/// Determines whether the Expression LeftProp ComparisonOperator RightProp is true or false.
/// </summary>
/// <param name="bo"></param>
/// <returns></returns>
public bool IsValid(IBusinessObject bo)
{
_prop1Value = (IComparable) bo.GetPropertyValue(this.LeftProp.PropertyName);
_prop2Value = (IComparable) bo.GetPropertyValue(this.RightProp.PropertyName);
if(_prop1Value == null || _prop2Value == null) return true;
int compareTo = _prop1Value.CompareTo(_prop2Value);
if (this.ComparisonOp == ComparisonOperator.LessThan) return compareTo <= -1;
if (this.ComparisonOp == ComparisonOperator.LessThanOrEqual) return compareTo <= 0;
if (this.ComparisonOp == ComparisonOperator.EqualTo) return compareTo == 0;
if (this.ComparisonOp == ComparisonOperator.GreaterThan) return compareTo > 0;
return compareTo > -1;
}
示例5: GetOrganisationID
protected object GetOrganisationID(IBusinessObject businessObject)
{
if (businessObject == null) return null;
return businessObject.GetPropertyValue("OrganisationID");
}