2016-03-22 3 views
1

Как точно визуализировать файл .cshtml?Как просмотреть файл MVC .cshtml как html?

Я новичок в asp.net. Я создал проект MVC с использованием шаблона Visual Studio. Очевидно, что все шаблоны имеют .cshtml для файлов Default/Index. Но мой сервер дает мне эту ошибку, когда я пытаюсь ее просмотреть:

Ошибка сервера в приложении «/».

Этот вид страницы не подан.

Описание: Тип запрашиваемой страницы не подается, потому что это явно запрещено. Расширение «.cshtml» может быть неверным. Ознакомьтесь с приведенным ниже URL и убедитесь, что оно написано правильно.

Запрошенный URL: /mobile/WebApplication1/Index.cshtml

Итак, как именно я рассматриваю файл индекс? Мне нужно передать его через что-то, чтобы преобразовать в .html или сделать его каким-то образом? Немного до того, чтобы встать и работать, будет оценено по достоинству. Благодарю.

+0

URL должен быть просто '/ mobile/WebApplication1/Index' –

+0

Я пробовал это. Это просто дает эту ошибку: Ресурс, который вы ищете, удален, изменил его имя или временно недоступен. – testing123

+0

Являются ли ваши файлы .cshtrml в вашей папке видов? –

ответ

3

Файлы с расширением .cshtml в контексте ASP.NET MVC - это виды. Они не могут быть просмотрены (обслуживаются веб-сервером) сами по себе. Вам потребуется действие контроллера, которое отобразит представление.

ПРИМЕЧАНИЕ: вы можете использовать некоторые «трюки» для изменения параметров IIS и вашего приложения, чтобы разрешить подавать файлы .cshtml на запросы браузеров, но это не было бы нормальным поведением.

Предполагая, что ваша точка зрения находится в ~/Views/Index.cshtml здесь (тривиальный) пример простого действия контроллера:

public class ExampleController : Controller 
{ 
    public ActionResult Index() 
    { 
     return View(); 
    } 
} 

Этот контроллер должен быть размещен по адресу: ~/Controllers/ExampleController.cs

Вы получите доступ обработанной страницы в : localhost/example/index

Подробнее о ASP.NET MVC здесь: http://www.asp.net/mvc/overview/getting-started/introduction/getting-started

+0

Можете ли вы дать мне или указать мне рабочий пример действия контроллера, который отобразит представление? – testing123

1

Вы не можете получить доступ к представлению MVC напрямую по его имени. Когда-либо...!

Что вы можете сделать, это вызвать действие контроллера, и это делается с помощью URL-адреса, такого как /WebApplication1/Index.

выше URL означает две вещи:

  • там должен быть класс называется WebApplication1Controller.cs,
  • и что класс должен иметь метод public ActionResult Index().

Метод Index затем определит, какой вид (если есть) будет отображаться, а также какие данные будут отправляться на это представление.

Если метод Index выполняет return View();, тогда существует неявное правило, что будет отображаться представление с тем же именем (в данном случае Index.cshtml).
Или, если по какой-то причине Index выполняет return View("Wow");, тогда будет отображаться вид под названием Wow.cshtml.

Смежные вопросы