コード例 #1
0
ファイル: SharedQueries.cs プロジェクト: tomekjanicki/cgdemo
 public bool ExistsById(PositiveInt id)
 {
     using (var connection = _dbConnectionProvider.GetOpenDbConnection())
     {
         return(connection.QuerySingle <bool>("SELECT CAST(CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END AS BIT) FROM DBO.CUSTOMERS WHERE ID = @ID", new { id = id.Value }));
     }
 }
コード例 #2
0
ファイル: Repository.cs プロジェクト: tomekjanicki/cgdemo
 public void Delete(PositiveInt id)
 {
     using (var connection = _dbConnectionProvider.GetOpenDbConnection())
     {
         connection.Execute("DELETE FROM DBO.CUSTOMERS WHERE ID = @ID", new { id = id.Value });
     }
 }
コード例 #3
0
 public PositiveInt Insert(Command command)
 {
     using (var connection = _dbConnectionProvider.GetOpenDbConnection())
     {
         return((PositiveInt)connection.QuerySingle <int>(@"INSERT INTO DBO.CUSTOMERS (SURNAME, NAME, PHONENUMBER, ADDRESS) VALUES (@surname, @name, @phoneNumber, @address) SELECT SCOPE_IDENTITY()", new { surname = command.Surname.Value, name = command.Name.Value, phoneNumber = command.PhoneNumber.Value, address = command.Address.Value }));
     }
 }
コード例 #4
0
ファイル: Repository.cs プロジェクト: tomekjanicki/cgdemo
 public void Update(Command command)
 {
     using (var connection = _dbConnectionProvider.GetOpenDbConnection())
     {
         connection.Execute("UPDATE DBO.CUSTOMERS SET NAME = @name, SURNAME = @surname, PHONENUMBER = @phoneNumber, ADDRESS = @address WHERE ID = @ID", new { id = command.IdVersion.Id.Value, name = command.Name.Value, surname = command.Surname.Value, phoneNumber = command.PhoneNumber.Value, address = command.Address.Value });
     }
 }
コード例 #5
0
 public Maybe <Customer> Get(PositiveInt id)
 {
     using (var connection = _dbConnectionProvider.GetOpenDbConnection())
     {
         return(connection.QuerySingleOrDefault <Customer>(SelectQuery, new { id = id.Value }));
     }
 }
コード例 #6
0
ファイル: QueryHandler.cs プロジェクト: tomekjanicki/cgdemo
        public Paged <Customer> Handle(Query query)
        {
            var pagedFragment = CommandHelper.GetPagedFragment(query.OrderByTopSkip.TopSkip, GetSortColumns(query.OrderByTopSkip.OrderByCollection));
            var countQuery    = string.Format(CountQuery);
            var selectQuery   = string.Format(SelectQuery, pagedFragment.Data);

            using (var connection = _dbConnectionProvider.GetOpenDbConnection())
            {
                var count  = (NonNegativeInt)connection.QuerySingle <int>(countQuery);
                var select = connection.Query <Customer>(selectQuery, pagedFragment.Parameters).ToImmutableList();
                return(Paged <Customer> .Create(count, select));
            }
        }