static public EntityRowProxy <TEntity> GenProxy <TEntity>(this EntityRow dataRow, IEntityTableSource entityTableSource = null) { string proxyKey = typeof(EntityRowProxy <TEntity>).FullName; EntityRowProxy <TEntity> proxy; if (!dataRow.TryGetCache(proxyKey, out proxy)) { proxy = new EntityRowProxy <TEntity>(dataRow, entityTableSource); dataRow.AddCache(proxyKey, proxy); } return(proxy); }