Corbin (11-1) allowed a run and seven hits in 6 2/3 innings. The All-Star left-hander threw three wild pitches -- tying a franchise record -- hit a batter and walked two, but still managed to win consecutive starts for the first time since he won seven in a row from April 28 to June 2.
The Diamondbacks' beleaguered bullpen managed to hold on for Arizona's seventh victory in the last 10 games. Heath Bell escaped a jam in the eighth thanks to a diving catch by center fielder A.J. Pollock, and David Hernandez finished for his second save in seven chances.
Bell had blown a save opportunity in each of his last two outings, leaving the closer spot unsettled.
Milwaukee starter Tom Gorzelanny (1-3) pitched six effective innings on his 31st birthday, but was saddled with the hard-luck loss. He allowed two unearned runs and three hits.
The Brewers chased Corbin in the seventh, but were unable to take advantage of a prime scoring opportunity. Yuniesky Betancourt had a leadoff double and Logan Schafer followed with a base hit to right, putting runners on second and third.
Corbin retired the next two hitters, and then walked fellow All-Star Jean Segura to load the bases. Will Harris came in and struck out another All-Star, Carlos Gomez, to end the inning.
Arizona scored in each of the first two innings, taking advantage of a pair of defensive miscues by Milwaukee.
Adam Eaton led off the first with a base hit and raced to third on errant pickoff attempt by Gorzelanny. He came home when Paul Goldschmidt bounced to third baseman Betancourt, tying it at 1.
Betancourt misplayed a sharp ground ball in the second that kicked off his glove for an error, allowing Cody Ross to score from second.
That was enough for Corbin, despite a wild start that cost him a run in the first. Segura reached on a one-out infield single and moved up on Gomez's sacrifice before a pair of wild pitches allowed him to come home.
Corbin threw a third wild pitch in the fourth inning after Jonathan Lucroy led off with a double. Lucroy was on third with no one out, but Rickie Weeks popped up, Sean Halton was retired on a shallow fly ball and Betancourt struck out.
The Brewers loaded the bases in the eighth inning with two out. Bell came on to a chorus of boos, but retired pinch hitter Martin Maldonado on the ball hit to Pollock.
Notes: The Diamondbacks have an extra-base hit in a major league-best 77 straight games. . . . The Diamondbacks will play a makeup game against the Texas Rangers on Aug. 1 in Arlington. The May 29 game between the teams was rained out. . . . Brewers pitcher Marco Estrada will throw a bullpen session Saturday. He's on the 15-day disabled list with a strained left hamstring. . . . Weeks played in his 1,000th career game, making him the 11th player in club history to reach that mark. . . . Right fielder Norichika Aoki took an extra-base hit away from Pollock with a lunging catch near the fence in the sixth inning. Schafer stole a hit from Martin Prado in the seventh with a diving catch of a sinking drive to left.