1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
/// <summary>
/// Returns selected PersistentObject if an actual instance is different
/// </summary>
/// <typeparam name="T">Type of entity</typeparam>
/// <param name="controller"></param>
/// <param name="key">request key</param>
/// <param name="actualInstance">entity instance</param>
/// <returns></returns>
public static T GetEntityFromRequest<T>(this Controller controller, string key, T actualInstance)
where T : PersistentObject
{
int entityId = 0;
if ((controller.Request[key] != null) && (int.TryParse(controller.Request[key].ToString(), out entityId)))
if ((actualInstance == null) || (actualInstance.ID != entityId))
{
T entity = new GenericDao<T>().Load(entityId);
return entity;
}
return actualInstance;
}
|