diff --git a/core/includes/entity.inc b/core/includes/entity.inc
index c69c588..3e56227 100644
--- a/core/includes/entity.inc
+++ b/core/includes/entity.inc
@@ -365,6 +365,9 @@ function entity_page_label(EntityInterface $entity, $langcode = NULL) {
  * @see \Drupal\Core\Entity\EntityViewBuilderInterface::view()
  */
 function entity_view(EntityInterface $entity, $view_mode, $langcode = NULL, $reset = FALSE) {
+  $error_msg = __METHOD__ . ' is deprecated as of Drupal 8.0.x and will be removed before Drupal 9.0.0. Instead, use \Drupal::entityTypeManager()->getViewBuilder($entity->getEntityTypeId())->view($entity, $view_mode, $langcode);';
+  trigger_error($error_msg, E_USER_DEPRECATED);
+
   $render_controller = \Drupal::entityManager()->getViewBuilder($entity->getEntityTypeId());
   if ($reset) {
     $render_controller->resetCache([$entity]);
diff --git a/core/modules/block/tests/src/Kernel/BlockViewBuilderTest.php b/core/modules/block/tests/src/Kernel/BlockViewBuilderTest.php
index 71c4f55..0758a91 100644
--- a/core/modules/block/tests/src/Kernel/BlockViewBuilderTest.php
+++ b/core/modules/block/tests/src/Kernel/BlockViewBuilderTest.php
@@ -83,7 +83,9 @@ public function testBasicRendering() {
 
     // Test the rendering of a block.
     $entity = Block::load('test_block1');
-    $output = entity_view($entity, 'block');
+    $output = \Drupal::entityTypeManager()
+      ->getViewBuilder($entity->getEntityTypeId())
+      ->view($entity, 'block');
     $expected = [];
     $expected[] = '<div id="block-test-block1">';
     $expected[] = '  ';
@@ -107,7 +109,9 @@ public function testBasicRendering() {
       ],
     ]);
     $entity->save();
-    $output = entity_view($entity, 'block');
+    $output = \Drupal::entityTypeManager()
+      ->getViewBuilder($entity->getEntityTypeId())
+      ->view($entity, 'block');
     $expected = [];
     $expected[] = '<div id="block-test-block2">';
     $expected[] = '  ';
diff --git a/core/modules/comment/comment.module b/core/modules/comment/comment.module
index b9d786e..26bc3fd 100644
--- a/core/modules/comment/comment.module
+++ b/core/modules/comment/comment.module
@@ -271,10 +271,12 @@ function comment_node_view_alter(array &$build, EntityInterface $node, EntityVie
  *   An array as expected by \Drupal\Core\Render\RendererInterface::render().
  *
  * @deprecated in Drupal 8.x and will be removed before Drupal 9.0.
- *   Use \Drupal::entityManager()->getViewBuilder('comment')->view().
+ *   Use \Drupal::entityTypeManager()->getViewBuilder('comment')->view().
  */
 function comment_view(CommentInterface $comment, $view_mode = 'full', $langcode = NULL) {
-  return entity_view($comment, $view_mode, $langcode);
+  return \Drupal::entityTypeManager()
+    ->getViewBuilder($comment->getEntityTypeId())
+    ->view($comment, $view_mode, $langcode);
 }
 
 /**
@@ -593,7 +595,9 @@ function comment_preview(CommentInterface $comment, FormStateInterface $form_sta
     $field_name = $comment->getFieldName();
     $entity = clone $entity;
     $entity->$field_name->status = CommentItemInterface::HIDDEN;
-    $build = entity_view($entity, 'full');
+    $build = \Drupal::entityTypeManager()
+      ->getViewBuilder($entity->getEntityTypeId())
+      ->view($entity, 'full');
   }
 
   $preview_build['comment_output_below'] = $build;
diff --git a/core/modules/contact/contact.module b/core/modules/contact/contact.module
index 5234949..4b25ec6 100644
--- a/core/modules/contact/contact.module
+++ b/core/modules/contact/contact.module
@@ -140,7 +140,9 @@ function contact_mail($key, &$message, $params) {
     case 'page_copy':
       $message['subject'] .= t('[@form] @subject', $variables, $options);
       $message['body'][] = t("@sender-name (@sender-url) sent a message using the contact form at @form-url.", $variables, $options);
-      $build = entity_view($contact_message, 'mail');
+      $build = \Drupal::entityTypeManager()
+        ->getViewBuilder($contact_message->getEntityTypeId())
+        ->view($contact_message, 'mail');
       $message['body'][] = \Drupal::service('renderer')->renderPlain($build);
       break;
 
@@ -159,7 +161,9 @@ function contact_mail($key, &$message, $params) {
       $message['body'][] = t('Hello @recipient-name,', $variables, $options);
       $message['body'][] = t("@sender-name (@sender-url) has sent you a message via your contact form at @site-name.", $variables, $options);
       $message['body'][] = t("If you don't want to receive such emails, you can change your settings at @recipient-edit-url.", $variables, $options);
-      $build = entity_view($contact_message, 'mail');
+      $build = \Drupal::entityTypeManager()
+        ->getViewBuilder($contact_message->getEntityTypeId())
+        ->view($contact_message, 'mail');
       $message['body'][] = \Drupal::service('renderer')->renderPlain($build);
       break;
   }
diff --git a/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceFormatterTest.php b/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceFormatterTest.php
index dd9e7d4..60da0b4 100644
--- a/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceFormatterTest.php
+++ b/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceFormatterTest.php
@@ -156,7 +156,9 @@ public function testAccess() {
         ->save();
 
       // Invoke entity view.
-      entity_view($referencing_entity, 'default');
+      \Drupal::entityTypeManager()
+        ->getViewBuilder($referencing_entity->getEntityTypeId())
+        ->view($referencing_entity, 'block');
 
       // Verify the un-accessible item still exists.
       $this->assertEqual($referencing_entity->{$field_name}->target_id, $this->referencedEntity->id(), format_string('The un-accessible item still exists after @name formatter was executed.', ['@name' => $name]));
diff --git a/core/modules/file/tests/src/Kernel/FileItemTest.php b/core/modules/file/tests/src/Kernel/FileItemTest.php
index ac6cd88..f337317 100644
--- a/core/modules/file/tests/src/Kernel/FileItemTest.php
+++ b/core/modules/file/tests/src/Kernel/FileItemTest.php
@@ -142,7 +142,9 @@ public function testFileItem() {
     $entity = EntityTest::create();
     $entity->file_test = ['entity' => $file3];
     $uri = $file3->getFileUri();
-    $output = entity_view($entity, 'default');
+    $output = \Drupal::entityTypeManager()
+      ->getViewBuilder($entity->getEntityTypeId())
+      ->view($entity, 'default');
     \Drupal::service('renderer')->renderRoot($output);
     $this->assertTrue(!empty($entity->file_test->entity));
     $this->assertEqual($entity->file_test->entity->getFileUri(), $uri);
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index ea27e26..06c8624 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -809,7 +809,9 @@ function node_get_recent($number = 10) {
  *   An array as expected by \Drupal\Core\Render\RendererInterface::render().
  */
 function node_view(NodeInterface $node, $view_mode = 'full', $langcode = NULL) {
-  return entity_view($node, $view_mode, $langcode);
+  return \Drupal::entityTypeManager()
+    ->getViewBuilder('node')
+    ->view($node, $view_mode, $langcode);
 }
 
 /**
diff --git a/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaTestBase.php b/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaTestBase.php
index 82ea9ef..b3c5b65 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaTestBase.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaTestBase.php
@@ -90,7 +90,9 @@ protected function assertFormatterRdfa($formatter, $property, $expected_rdf_valu
     entity_get_display('entity_test', 'entity_test', 'default')
       ->setComponent($this->fieldName, $formatter)
       ->save();
-    $build = entity_view($this->entity, 'default');
+    $build = \Drupal::entityTypeManager()
+      ->getViewBuilder($this->entity->getEntityTypeId())
+      ->view($this->entity, 'default');
     $output = \Drupal::service('renderer')->renderRoot($build);
     $graph = new \EasyRdf_Graph($this->uri, $output, 'rdfa');
     $this->setRawContent($output);
diff --git a/core/modules/taxonomy/taxonomy.module b/core/modules/taxonomy/taxonomy.module
index 179487d..2f2c111 100644
--- a/core/modules/taxonomy/taxonomy.module
+++ b/core/modules/taxonomy/taxonomy.module
@@ -217,7 +217,9 @@ function taxonomy_check_vocabulary_hierarchy(VocabularyInterface $vocabulary, $c
  *   \Drupal\Core\Render\RendererInterface::render().
  */
 function taxonomy_term_view(Term $term, $view_mode = 'full', $langcode = NULL) {
-  return entity_view($term, $view_mode, $langcode);
+  return \Drupal::entityTypeManager()
+    ->getViewBuilder($term->getEntityTypeId())
+    ->view($term, $view_mode, $langcode);
 }
 
 /**
diff --git a/core/modules/user/src/Tests/UserBlocksTest.php b/core/modules/user/src/Tests/UserBlocksTest.php
index 0a4c619..b5193f6 100644
--- a/core/modules/user/src/Tests/UserBlocksTest.php
+++ b/core/modules/user/src/Tests/UserBlocksTest.php
@@ -144,7 +144,9 @@ public function testWhosOnlineBlock() {
 
     // Test block output.
     \Drupal::currentUser()->setAccount($user1);
-    $content = entity_view($block, 'block');
+    $content = \Drupal::entityTypeManager()
+      ->getViewBuilder($block->getEntityTypeId())
+      ->view($block, 'block');
     $this->setRawContent(\Drupal::service('renderer')->renderRoot($content));
     $this->assertRaw(t('2 users'), 'Correct number of online users (2 users).');
     $this->assertText($user1->getUsername(), 'Active user 1 found in online list.');
diff --git a/core/modules/user/user.module b/core/modules/user/user.module
index a2b6464..b477fec 100644
--- a/core/modules/user/user.module
+++ b/core/modules/user/user.module
@@ -903,7 +903,9 @@ function user_delete_multiple(array $uids) {
  *   An array as expected by \Drupal\Core\Render\RendererInterface::render().
  */
 function user_view($account, $view_mode = 'full', $langcode = NULL) {
-  return entity_view($account, $view_mode, $langcode);
+  return \Drupal::entityTypeManager()
+    ->getViewBuilder($account->getEntityTypeId())
+    ->view($account, $view_mode, $langcode);
 }
 
 /**
