Warren Foegele and Leon Draisaitl each scored a power-play goal, and the Edmonton Oilers beat the Vancouver Canucks 2-1 on Saturday night.

Brock Boeser scored for Vancouver with seven seconds left.

Edmonton goalie Mikko Koskinen stopped 29 shots in his fourth straight start in place of Mike Smith, who is sidelined due to a lower-body injury.

"It starts with Mikko," said Oilers forward Zach Hyman. "He made some huge saves, so you can’t have a game like that without him. I thought it was a good game. We bounce back after a loss, on the road, playing a good Vancouver team. Get the win and not give up an even-strength (goal)."

Thatcher Demko made 32 saves for the Canucks.

CLICK HERE FOR MORE SPORTS COVERAGE ON FOXNEWS.COM

Connor McDavid had one assist and nine shots on goal. Conor Garland led the way with six shots for Vancouver (3-5-1).

The game was largely a defensive battle, with limited scoring chances for both sides.

"It was a hard-fought hockey game tonight, no goals 5-on-5," Canucks coach Travis Green said. "We came out on the wrong side of it.

"I don’t like losing. Our team doesn’t like losing. But I thought we probably took a step in the right direction for some of our guys tonight."

The Oilers (6-1-0) opened the scoring at 11:39 of the first period, after Tyler Myers was whistled for hooking Edmonton’s Jesse Puljujarvi. With one second left on the man-advantage, Foegele scored on a rebound off a shot by Darnell Nurse past an outstretched Demko for his second of the season.

"It was nice to get an opportunity there and our unit cashed in on one," said Foegele, acquired in an offseason trade with the Carolina Hurricanes. "There’s a lot of special talent on that first unit there and we get to watch it on the bench just like you guys get to watch."

It was a rare goal from Edmonton’s second power-play unit, which sees limited ice time playing behind superstars like McDavid and Draisaitl.

"It came up with a big goal for us, that’s for sure — a real big goal," Oilers coach Dave Tippett said. "It got us going, and our power play got us a big one at the end of the second and that was enough to get us a win."

Draisaitl scored his fifth goal with 40 seconds remaining in the second. With Oliver Ekman-Larsson in the penalty box, Draisaitl beat Demko with a one-timer from the right circle, set up by Ryan Nugent-Hopkins and McDavid, who started the play by bouncing a shot off the shin of defender Luke Schenn.

"Things are going well," Foegele said. "But like we keep saying, it’s early, try to take it day by day. You don’t want to get too far ahead of yourself and you know how good this league can be. So keep playing fast, simple and the results should show."

The Canucks did not get a power-play opportunity until late in the third period, when they were pressing with Demko on the bench for the extra attacker. Koskinen’s two best saves came while the Canucks pressed hard with the 6-on-4 advantage before Boeser scored in the final seconds.

The Canucks are winless this season at Rogers Arena and have totaled just four goals during three losses on their season-opening, seven-game homestand.

"There was times where we created a lot, but we’ve got to do that kind of stuff for a full 60 minutes," said Canucks captain Bo Horvat, who went 16 for 23 on faceoffs and finished with three shots on goal. "Sporadically is not going to win you hockey games. We’ve got to figure out ways to get it done."

Edmonton was held to two goals in regulation for just the second time this season.

"It is a good job at 5-on-5, but we’ve got to find a way to win those hockey games," Horvat said. "When you do hold a team like Edmonton to two goals, you’ve got to figure out a way to score three."

NOTES: It was the second meeting between the Oilers and Canucks this season. On Oct. 13, Edmonton beat Vancouver 3-2 in a shootout in both teams’ season opener. … Edmonton held a 6-4-0 edge in last year’s North Division season series. … The Oilers and Canucks lost to the Philadelphia Flyers in their last games. It was Edmonton’s first defeat of the year. … Jason Dickinson and Tucker Poolman were back in the Vancouver lineup after missing Thursday’s game with an injury. ... Schenn played his 800th NHL game for Vancouver.

UP NEXT

Edmonton: Host the expansion Seattle Kraken on Monday in the opener of a three-game home set.

Vancouver: Host the New York Rangers on Tuesday in the fourth game of a seven-game homestand.