private string compileSelector() { ISQLSelect sqlSelect = Sql.Selector; Expression selectExpression = sqlSelect.Expression; IEntityMapper selectorMapper = sqlSelect.Mapper; _selectorCompilerStr = new StringBuilder("SELECT "); if (selectExpression == null) { if (!string.IsNullOrEmpty(sqlSelect.Alias)) { // 被As强制定义了别名 Sql.AliasCollection.Update(sqlSelect.Alias, Sql.Selector.Type); } _selectorCompilerStr.Append( selectorMapper.Columns.Length == 0 ? sqlSelect.ComposeSelectKey("*") : string.Join(", ", selectorMapper.Fields.Select(p => $"{sqlSelect.ComposeSelectKey(selectorMapper.GetColumnName(p))} AS {p}")) ); } else { this.Visit(selectExpression); _selectorCompilerStr.TrimComma(); } _selectorCompilerStr.Append(" FROM "); _selectorCompilerStr.Append(sqlSelect.ComposeTableName()); string compileResult = _selectorCompilerStr.ToString(); _selectorCompilerStr = null; return(compileResult); }
public ManagerBaseViewModel(IDialoger dialoger, User user, ISQLSelect sqlSelect, ISQLInsert sqlInsert, ISQLUpdate sqlUpdate) { this.dialoger = dialoger; this.user = user; this.sqlSelect = sqlSelect; this.sqlInsert = sqlInsert; this.sqlUpdate = sqlUpdate; employee = sqlSelect.GetEmployee(this.user); EmployeesCommand = new RelayCommand(obj => GoToEmployeesPage()); AnimalsCommand = new RelayCommand(obj => GoToAnimalsPage()); DiseasesCommand = new RelayCommand(obj => GoToDiseasesPage()); MedicalProceduresCommand = new RelayCommand(obj => GoToMedicalProceduresPage()); }
protected VetBaseViewModel(User user, IDialoger dialoger, ISQLSelect sqlSelect, ISQLInsert sqlInsert, ISQLUpdate sqlUpdate, ISQLDelete sqlDelete) { User = user; this.sqlSelect = sqlSelect; this.sqlInsert = sqlInsert; this.sqlUpdate = sqlUpdate; this.sqlDelete = sqlDelete; employee = sqlSelect.GetEmployee(User); this.dialoger = dialoger; LoadData(); DiseasesCommand = new RelayCommand(obj => GoToDiseasePage()); MedicalProceduresCommand = new RelayCommand(obj => GoToMedicalProceduresPage()); ProtegesCommand = new RelayCommand(obj => GoToProtegesPage()); }
protected AdminBaseViewModel(User user, ISQLCredentials sqlCredentials, IDialoger dialoger, ISQLSelect sqlSelect, ISQLInsert sqlInsert, ISQLUpdate sqlUpdate) { this.sqlCredentials = sqlCredentials; this.dialoger = dialoger; this.user = user; this.sqlSelect = sqlSelect; this.sqlInsert = sqlInsert; this.sqlUpdate = sqlUpdate; EmployeesCommand = new RelayCommand(obj => GoToEmployeesPage()); AnimalsCommand = new RelayCommand(obj => GoToAnimalsPage()); SpeciesCommand = new RelayCommand(obj => GoToSpeciesPage()); CagesAndAreasCommand = new RelayCommand(obj => GoToCagesAndAreasPage()); MedicalProceduresCommand = new RelayCommand(obj => GoToMedicineProceduresPage()); DiseasesCommand = new RelayCommand(obj => GoToDiseasesPage()); CleaningsAndFeedingsCommand = new RelayCommand(obj => GoToCleaningsAndFeedingsPage()); }
protected RegularEmployeeBaseViewModel(User user, IDialoger dialoger, ISQLSelect sqlSelect, ISQLInsert sqlInsert, ISQLUpdate sqlUpdate, ISQLDelete sqlDelete) { this.dialoger = dialoger; this.sqlSelect = sqlSelect; this.sqlInsert = sqlInsert; this.sqlUpdate = sqlUpdate; this.sqlDelete = sqlDelete; User = user; employee = sqlSelect.GetEmployee(User); LoadData(); FeedingCommand = new RelayCommand(obj => GoToFeedingPage()); CleaningCommand = new RelayCommand(obj => GoToCleaningPage()); ProtegesCommand = new RelayCommand(obj => GoToProtegesPage()); }