簡體   English   中英

在MVC中創建ASPX視圖的正確方法是什么?

[英]What is the PROPER way to create an ASPX View in MVC?

本質上,我的問題是這樣的:我試圖在ASPX頁面上顯示ViewData變量,但是卻得到“當前上下文中不存在ViewData”。

是什么把我引到這里的? 我是MVC的新手,並且正在關注在線教程。 在第1課中,他讓我們通過轉到添加>視圖來創建視圖,這將創建一個Razor視圖。 然后,在下一個教程中,他教我們如何使用ViewData將變量傳遞給視圖。 但是,當他顯示它時,他是使用<%:%>方法執行的,該方法在我的Razor頁面上不起作用。 因此,我嘗試通過傳統方式創建Web窗體在View文件夾中創建ASPX頁面。 當我這樣做時,我得到上面提到的錯誤。 我已經成功地弄清楚了如何在我的cshtml頁面中使用Razor方法,但是我想以“尖括號-百分比”的方式來實現它的合適方法是什么?

編輯:基本上,我所做的只是在以下演練中按照教程2的說明進行操作。 他並沒有真正解釋他如何創建ASPX頁面(或者根本不使用ASPX頁面)。 如果有人知道更好,更完整的教程,我將不知所措。 http://www.codeproject.com/Articles/207797/Learn-MVC-Model-View-Controller-step-by-step-in#Lab1:-創建一個簡單的Hello World ASP.NET MVC應用程序

Edit2:應要求,這是我的代碼:

ASPX:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="MVCLearn.Views.FirstMVC.Index" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <%= ViewData["vwTest"] %>
    </div>
    </form>
</body>
</html>

這是我的控制器:

    public class FirstMVCController : Controller
    {
        // GET: FirstMVC
        public ActionResult Index()
        {
            ViewData["vwtest"] = "Something";
            return View();
        }

        public ActionResult SayHello()
        {
            return View("HelloView");
        }
    }
      <%= ViewData["vwTest"] %>
  ViewData["vwtest"] = "Something";

vwTest!= vwtest

你應該寫同樣的名字

   <%= ViewData["vwTest"] %>
      ViewData["vwTest"] = "Something";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM