本文整理汇总了C#中IPropertyMap.GetDocAttribute方法的典型用法代码示例。如果您正苦于以下问题:C# IPropertyMap.GetDocAttribute方法的具体用法?C# IPropertyMap.GetDocAttribute怎么用?C# IPropertyMap.GetDocAttribute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPropertyMap
的用法示例。
在下文中一共展示了IPropertyMap.GetDocAttribute方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DeserializeInlineProperty
protected virtual void DeserializeInlineProperty(object obj, IClassMap classMap, IPropertyMap propertyMap, XmlNode xmlObject)
{
IObjectManager om = this.Context.ObjectManager;
IPersistenceManager pm = this.Context.PersistenceManager;
string element = propertyMap.DocElement;
object xmlValue = null;
bool isNull = true;
if (element.Length > 0)
{
}
else
{
string attribute = propertyMap.GetDocAttribute();
if (!(xmlObject.Attributes[attribute] == null))
{
xmlValue = xmlObject.Attributes[attribute].Value;
isNull = false;
}
else
{
xmlValue = DBNull.Value;
isNull = true;
}
}
object orgValue = FromString(obj, classMap, propertyMap, xmlValue);
object value = pm.ManageLoadedValue(obj, propertyMap, orgValue);
om.SetNullValueStatus(obj, propertyMap.Name, isNull);
om.SetPropertyValue(obj, propertyMap.Name, value);
om.SetOriginalPropertyValue(obj, propertyMap.Name, orgValue);
}
示例2: SerializeInlineProperty
protected virtual void SerializeInlineProperty(XmlNode xmlObject, object obj, IClassMap classMap, IPropertyMap propertyMap, bool creating)
{
IObjectManager om = this.Context.ObjectManager;
string element = propertyMap.DocElement;
object value = null ;
bool isNull = om.GetNullValueStatus(obj, propertyMap.Name);
//Optimistic concurrency
if (!(creating))
{
//Check value in xmlDoc against property original value, make sure they match
}
if (isNull)
{
om.SetOriginalPropertyValue(obj, propertyMap.Name, System.DBNull.Value);
//if the attribute/element exists, remove it
if (element.Length > 0)
{
RemoveNode(xmlObject, element);
}
else
{
RemoveAttribute(xmlObject, propertyMap.GetDocAttribute());
}
}
else
{
value = om.GetPropertyValue(obj, propertyMap.Name) ;
om.SetOriginalPropertyValue(obj, propertyMap.Name, value);
if (element.Length > 0)
{
SetNodeValue(xmlObject, element, value);
}
else
{
SetAttributeValue(xmlObject, propertyMap.GetDocAttribute(), value);
}
}
}