Exemplo n.º 1
0
        private static GXSelectArgs SelectByIdInternal <T, IDTYPE>(IDTYPE id, Expression <Func <T, object> > columns)
        {
            GXSelectArgs     arg = GXSelectArgs.Select <T>(columns);
            GXSerializedItem si  = GXSqlBuilder.FindUnique(typeof(T));

            if (si == null)
            {
                throw new ArgumentException("Select by ID failed. Target class must be derived from IUnique.");
            }
            string name = GXDbHelpers.GetColumnName(si.Target as PropertyInfo, '\0');

            arg.Where.Or <IUnique <T> >(q => name.Equals(id));
            return(arg);
        }