本文整理汇总了C#中iSolutions.iApply.DataContract.Application.GetType方法的典型用法代码示例。如果您正苦于以下问题:C# Application.GetType方法的具体用法?C# Application.GetType怎么用?C# Application.GetType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类iSolutions.iApply.DataContract.Application
的用法示例。
在下文中一共展示了Application.GetType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TryGetAppProperty
/// <summary>
/// Return true and populate from application property if the key is in the ApplicationHeaderIndex.
/// Return false and set column to null if not application property.
/// </summary>
/// <param name="key">The key to match on.</param>
/// <param name="app">The application to extract values from.</param>
/// <param name="column">Matched value output.</param>
/// <returns>True if application property, false if not.</returns>
private bool TryGetAppProperty(string key, Application app, out string column)
{
column = null;
object columnObj;
if (key.Length > 11 && this.userByTypes.Contains(key.Remove(key.Length - 11)))
{
object propertyValue = app.GetType().GetProperty(key.Remove(key.Length - 11)).GetValue(app);
IApplicationUser user = propertyValue as IApplicationUser;
if ((user != null && this.TryGetUserFromCache(user.Id, out column)) || this.TryGetUserFromCache(propertyValue.ToString(), out column))
{
return true;
}
User matchUser = user != null ? this.getUserByIdFn(user.Id) : this.getUserByIdFn(propertyValue.ToString());
if (matchUser == null)
{
return false;
}
if (!this.userCache.ContainsKey(matchUser.Id))
{
this.userCache.Add(matchUser.Id, matchUser.DisplayName);
}
column = matchUser.DisplayName;
return true;
}
try
{
var prop = app.GetType().GetProperty(key);
if (prop == null)
{
return false;
}
columnObj = prop.GetValue(app);
}
catch (ArgumentNullException)
{
return false;
}
if (columnObj == null)
{
return false;
}
if (columnObj is DateTime)
{
column = ((DateTime)columnObj).ToString("yyyy-MM-dd HH:mm:ss");
}
else
{
var obj = columnObj as IApplicationUser;
column = this.EscapeForCsv(obj != null ? obj.Id : columnObj.ToString());
}
return true;
}